Bug 1958752 - Rename GpuProcessD3D11FencesHolderMap to CompositeProcessD3D11FencesHolderMap r=gfx-reviewers,lsalzman
By Bug 1957563, GpuProcessD3D11FencesHolderMap is changed to instantiate also in Parent process when GPU process does not exist. Then it seems better to change its name. Differential Revision: https://phabricator.services.mozilla.com/D244684
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
#include "mozilla/gfx/DeviceManagerDx.h"
|
#include "mozilla/gfx/DeviceManagerDx.h"
|
||||||
#include "mozilla/gfx/Logging.h"
|
#include "mozilla/gfx/Logging.h"
|
||||||
#include "mozilla/layers/FenceD3D11.h"
|
#include "mozilla/layers/FenceD3D11.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
#include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
#include "mozilla/layers/ImageDataSerializer.h"
|
#include "mozilla/layers/ImageDataSerializer.h"
|
||||||
#include "mozilla/webgpu/WebGPUParent.h"
|
#include "mozilla/webgpu/WebGPUParent.h"
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ UniquePtr<ExternalTextureD3D11> ExternalTextureD3D11::Create(
|
|||||||
const uint32_t aWidth, const uint32_t aHeight,
|
const uint32_t aWidth, const uint32_t aHeight,
|
||||||
const struct ffi::WGPUTextureFormat aFormat,
|
const struct ffi::WGPUTextureFormat aFormat,
|
||||||
const ffi::WGPUTextureUsages aUsage) {
|
const ffi::WGPUTextureUsages aUsage) {
|
||||||
auto* fencesHolderMap = layers::GpuProcessD3D11FencesHolderMap::Get();
|
auto* fencesHolderMap = layers::CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fencesHolderMap) {
|
if (!fencesHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
gfxCriticalNoteOnce << "Failed to get FencesHolderMap";
|
gfxCriticalNoteOnce << "Failed to get FencesHolderMap";
|
||||||
@@ -121,7 +121,7 @@ ExternalTextureD3D11::~ExternalTextureD3D11() {}
|
|||||||
void* ExternalTextureD3D11::GetExternalTextureHandle() {
|
void* ExternalTextureD3D11::GetExternalTextureHandle() {
|
||||||
RefPtr<ID3D11Device> device;
|
RefPtr<ID3D11Device> device;
|
||||||
mTexture->GetDevice(getter_AddRefs(device));
|
mTexture->GetDevice(getter_AddRefs(device));
|
||||||
auto* fencesHolderMap = layers::GpuProcessD3D11FencesHolderMap::Get();
|
auto* fencesHolderMap = layers::CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
MOZ_ASSERT(fencesHolderMap);
|
MOZ_ASSERT(fencesHolderMap);
|
||||||
|
|
||||||
// XXX deliver fences to wgpu
|
// XXX deliver fences to wgpu
|
||||||
@@ -135,7 +135,7 @@ Maybe<layers::SurfaceDescriptor> ExternalTextureD3D11::ToSurfaceDescriptor() {
|
|||||||
|
|
||||||
mWriteFence->Update(mSubmissionIndex);
|
mWriteFence->Update(mSubmissionIndex);
|
||||||
|
|
||||||
auto* fencesHolderMap = layers::GpuProcessD3D11FencesHolderMap::Get();
|
auto* fencesHolderMap = layers::CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
MOZ_ASSERT(fencesHolderMap);
|
MOZ_ASSERT(fencesHolderMap);
|
||||||
fencesHolderMap->SetWriteFence(mFencesHolderId, mWriteFence);
|
fencesHolderMap->SetWriteFence(mFencesHolderId, mWriteFence);
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
# include "gfxWindowsPlatform.h"
|
# include "gfxWindowsPlatform.h"
|
||||||
# include "mozilla/WindowsVersion.h"
|
# include "mozilla/WindowsVersion.h"
|
||||||
# include "mozilla/gfx/DeviceManagerDx.h"
|
# include "mozilla/gfx/DeviceManagerDx.h"
|
||||||
# include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
# include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
# include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
# include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
||||||
# include "mozilla/layers/TextureD3D11.h"
|
# include "mozilla/layers/TextureD3D11.h"
|
||||||
# include "mozilla/widget/WinCompositorWindowThread.h"
|
# include "mozilla/widget/WinCompositorWindowThread.h"
|
||||||
@@ -215,7 +215,7 @@ bool GPUParent::Init(mozilla::ipc::UntypedEndpoint&& aEndpoint,
|
|||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
gfxWindowsPlatform::InitMemoryReportersForGPUProcess();
|
gfxWindowsPlatform::InitMemoryReportersForGPUProcess();
|
||||||
DeviceManagerDx::Init();
|
DeviceManagerDx::Init();
|
||||||
GpuProcessD3D11FencesHolderMap::Init();
|
CompositeProcessD3D11FencesHolderMap::Init();
|
||||||
GpuProcessD3D11TextureMap::Init();
|
GpuProcessD3D11TextureMap::Init();
|
||||||
auto rv = wmf::MediaFoundationInitializer::HasInitialized();
|
auto rv = wmf::MediaFoundationInitializer::HasInitialized();
|
||||||
if (!rv) {
|
if (!rv) {
|
||||||
@@ -806,7 +806,7 @@ void GPUParent::ActorDestroy(ActorDestroyReason aWhy) {
|
|||||||
|
|
||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
GpuProcessD3D11TextureMap::Shutdown();
|
GpuProcessD3D11TextureMap::Shutdown();
|
||||||
GpuProcessD3D11FencesHolderMap::Shutdown();
|
CompositeProcessD3D11FencesHolderMap::Shutdown();
|
||||||
DeviceManagerDx::Shutdown();
|
DeviceManagerDx::Shutdown();
|
||||||
#endif
|
#endif
|
||||||
LayerTreeOwnerTracker::Shutdown();
|
LayerTreeOwnerTracker::Shutdown();
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
#include "mozilla/layers/CompositableForwarder.h"
|
#include "mozilla/layers/CompositableForwarder.h"
|
||||||
#include "mozilla/layers/D3D11YCbCrImage.h"
|
#include "mozilla/layers/D3D11YCbCrImage.h"
|
||||||
#include "mozilla/layers/FenceD3D11.h"
|
#include "mozilla/layers/FenceD3D11.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
#include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
#include "mozilla/layers/TextureClient.h"
|
#include "mozilla/layers/TextureClient.h"
|
||||||
|
|
||||||
namespace mozilla {
|
namespace mozilla {
|
||||||
@@ -70,7 +70,7 @@ bool IMFYCbCrImage::CopyDataToTexture(const Data& aData, ID3D11Device* aDevice,
|
|||||||
ctx->UpdateSubresource(textureCr, 0, &box, aData.mCrChannel,
|
ctx->UpdateSubresource(textureCr, 0, &box, aData.mCrChannel,
|
||||||
aData.mCbCrStride, 0);
|
aData.mCbCrStride, 0);
|
||||||
|
|
||||||
auto* fenceHolderMap = GpuProcessD3D11FencesHolderMap::Get();
|
auto* fenceHolderMap = CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fenceHolderMap) {
|
if (!fenceHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return false;
|
return false;
|
||||||
@@ -89,7 +89,7 @@ TextureClient* IMFYCbCrImage::GetD3D11TextureClient(
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto* fenceHolderMap = GpuProcessD3D11FencesHolderMap::Get();
|
auto* fenceHolderMap = CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fenceHolderMap) {
|
if (!fenceHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
#include "GpuProcessD3D11FencesHolderMap.h"
|
#include "CompositeProcessD3D11FencesHolderMap.h"
|
||||||
|
|
||||||
#include "mozilla/layers/FenceD3D11.h"
|
#include "mozilla/layers/FenceD3D11.h"
|
||||||
|
|
||||||
@@ -12,33 +12,33 @@ namespace mozilla {
|
|||||||
|
|
||||||
namespace layers {
|
namespace layers {
|
||||||
|
|
||||||
StaticAutoPtr<GpuProcessD3D11FencesHolderMap>
|
StaticAutoPtr<CompositeProcessD3D11FencesHolderMap>
|
||||||
GpuProcessD3D11FencesHolderMap::sInstance;
|
CompositeProcessD3D11FencesHolderMap::sInstance;
|
||||||
|
|
||||||
/* static */
|
/* static */
|
||||||
void GpuProcessD3D11FencesHolderMap::Init() {
|
void CompositeProcessD3D11FencesHolderMap::Init() {
|
||||||
MOZ_ASSERT(XRE_IsGPUProcess() || XRE_IsParentProcess());
|
MOZ_ASSERT(XRE_IsGPUProcess() || XRE_IsParentProcess());
|
||||||
sInstance = new GpuProcessD3D11FencesHolderMap();
|
sInstance = new CompositeProcessD3D11FencesHolderMap();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* static */
|
/* static */
|
||||||
void GpuProcessD3D11FencesHolderMap::Shutdown() {
|
void CompositeProcessD3D11FencesHolderMap::Shutdown() {
|
||||||
MOZ_ASSERT(XRE_IsGPUProcess() || XRE_IsParentProcess());
|
MOZ_ASSERT(XRE_IsGPUProcess() || XRE_IsParentProcess());
|
||||||
sInstance = nullptr;
|
sInstance = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
GpuProcessD3D11FencesHolderMap::GpuProcessD3D11FencesHolderMap()
|
CompositeProcessD3D11FencesHolderMap::CompositeProcessD3D11FencesHolderMap()
|
||||||
: mMonitor("GpuProcessD3D11FencesHolderMap::mMonitor") {}
|
: mMonitor("CompositeProcessD3D11FencesHolderMap::mMonitor") {}
|
||||||
|
|
||||||
GpuProcessD3D11FencesHolderMap::~GpuProcessD3D11FencesHolderMap() {}
|
CompositeProcessD3D11FencesHolderMap::~CompositeProcessD3D11FencesHolderMap() {}
|
||||||
|
|
||||||
void GpuProcessD3D11FencesHolderMap::Register(
|
void CompositeProcessD3D11FencesHolderMap::Register(
|
||||||
GpuProcessFencesHolderId aHolderId) {
|
GpuProcessFencesHolderId aHolderId) {
|
||||||
MonitorAutoLock lock(mMonitor);
|
MonitorAutoLock lock(mMonitor);
|
||||||
|
|
||||||
mFencesHolderById[aHolderId] = MakeUnique<FencesHolder>();
|
mFencesHolderById[aHolderId] = MakeUnique<FencesHolder>();
|
||||||
}
|
}
|
||||||
void GpuProcessD3D11FencesHolderMap::Unregister(
|
void CompositeProcessD3D11FencesHolderMap::Unregister(
|
||||||
GpuProcessFencesHolderId aHolderId) {
|
GpuProcessFencesHolderId aHolderId) {
|
||||||
MonitorAutoLock lock(mMonitor);
|
MonitorAutoLock lock(mMonitor);
|
||||||
|
|
||||||
@@ -49,7 +49,7 @@ void GpuProcessD3D11FencesHolderMap::Unregister(
|
|||||||
mFencesHolderById.erase(it);
|
mFencesHolderById.erase(it);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GpuProcessD3D11FencesHolderMap::SetWriteFence(
|
void CompositeProcessD3D11FencesHolderMap::SetWriteFence(
|
||||||
GpuProcessFencesHolderId aHolderId, RefPtr<FenceD3D11> aWriteFence) {
|
GpuProcessFencesHolderId aHolderId, RefPtr<FenceD3D11> aWriteFence) {
|
||||||
MOZ_ASSERT(aWriteFence);
|
MOZ_ASSERT(aWriteFence);
|
||||||
|
|
||||||
@@ -77,7 +77,7 @@ void GpuProcessD3D11FencesHolderMap::SetWriteFence(
|
|||||||
it->second->mWriteFence = fence;
|
it->second->mWriteFence = fence;
|
||||||
}
|
}
|
||||||
|
|
||||||
void GpuProcessD3D11FencesHolderMap::SetReadFence(
|
void CompositeProcessD3D11FencesHolderMap::SetReadFence(
|
||||||
GpuProcessFencesHolderId aHolderId, RefPtr<FenceD3D11> aReadFence) {
|
GpuProcessFencesHolderId aHolderId, RefPtr<FenceD3D11> aReadFence) {
|
||||||
MOZ_ASSERT(aReadFence);
|
MOZ_ASSERT(aReadFence);
|
||||||
|
|
||||||
@@ -102,7 +102,7 @@ void GpuProcessD3D11FencesHolderMap::SetReadFence(
|
|||||||
it->second->mReadFences.push_back(fence);
|
it->second->mReadFences.push_back(fence);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GpuProcessD3D11FencesHolderMap::WaitWriteFence(
|
bool CompositeProcessD3D11FencesHolderMap::WaitWriteFence(
|
||||||
GpuProcessFencesHolderId aHolderId, ID3D11Device* aDevice) {
|
GpuProcessFencesHolderId aHolderId, ID3D11Device* aDevice) {
|
||||||
MOZ_ASSERT(aDevice);
|
MOZ_ASSERT(aDevice);
|
||||||
|
|
||||||
@@ -129,7 +129,7 @@ bool GpuProcessD3D11FencesHolderMap::WaitWriteFence(
|
|||||||
return writeFence->Wait(aDevice);
|
return writeFence->Wait(aDevice);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GpuProcessD3D11FencesHolderMap::WaitAllFencesAndForget(
|
bool CompositeProcessD3D11FencesHolderMap::WaitAllFencesAndForget(
|
||||||
GpuProcessFencesHolderId aHolderId, ID3D11Device* aDevice) {
|
GpuProcessFencesHolderId aHolderId, ID3D11Device* aDevice) {
|
||||||
MOZ_ASSERT(aDevice);
|
MOZ_ASSERT(aDevice);
|
||||||
|
|
||||||
@@ -4,8 +4,8 @@
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
#ifndef MOZILLA_GFX_GpuProcessD3D11FencesHolderMap_H
|
#ifndef MOZILLA_GFX_CompositeProcessD3D11FencesHolderMap_H
|
||||||
#define MOZILLA_GFX_GpuProcessD3D11FencesHolderMap_H
|
#define MOZILLA_GFX_CompositeProcessD3D11FencesHolderMap_H
|
||||||
|
|
||||||
#include <d3d11.h>
|
#include <d3d11.h>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
@@ -23,14 +23,14 @@ class FenceD3D11;
|
|||||||
/**
|
/**
|
||||||
* A class to manage FenceD3D11 that is shared in GPU process.
|
* A class to manage FenceD3D11 that is shared in GPU process.
|
||||||
*/
|
*/
|
||||||
class GpuProcessD3D11FencesHolderMap {
|
class CompositeProcessD3D11FencesHolderMap {
|
||||||
public:
|
public:
|
||||||
static void Init();
|
static void Init();
|
||||||
static void Shutdown();
|
static void Shutdown();
|
||||||
static GpuProcessD3D11FencesHolderMap* Get() { return sInstance; }
|
static CompositeProcessD3D11FencesHolderMap* Get() { return sInstance; }
|
||||||
|
|
||||||
GpuProcessD3D11FencesHolderMap();
|
CompositeProcessD3D11FencesHolderMap();
|
||||||
~GpuProcessD3D11FencesHolderMap();
|
~CompositeProcessD3D11FencesHolderMap();
|
||||||
|
|
||||||
void Register(GpuProcessFencesHolderId aHolderId);
|
void Register(GpuProcessFencesHolderId aHolderId);
|
||||||
void Unregister(GpuProcessFencesHolderId aHolderId);
|
void Unregister(GpuProcessFencesHolderId aHolderId);
|
||||||
@@ -59,10 +59,10 @@ class GpuProcessD3D11FencesHolderMap {
|
|||||||
GpuProcessFencesHolderId::HashFn>
|
GpuProcessFencesHolderId::HashFn>
|
||||||
mFencesHolderById;
|
mFencesHolderById;
|
||||||
|
|
||||||
static StaticAutoPtr<GpuProcessD3D11FencesHolderMap> sInstance;
|
static StaticAutoPtr<CompositeProcessD3D11FencesHolderMap> sInstance;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace layers
|
} // namespace layers
|
||||||
} // namespace mozilla
|
} // namespace mozilla
|
||||||
|
|
||||||
#endif /* MOZILLA_GFX_GpuProcessD3D11FencesHolderMap_H */
|
#endif /* MOZILLA_GFX_CompositeProcessD3D11FencesHolderMap_H */
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
#include "mozilla/layers/CompositorBridgeChild.h"
|
#include "mozilla/layers/CompositorBridgeChild.h"
|
||||||
#include "mozilla/layers/D3D11ZeroCopyTextureImage.h"
|
#include "mozilla/layers/D3D11ZeroCopyTextureImage.h"
|
||||||
#include "mozilla/layers/FenceD3D11.h"
|
#include "mozilla/layers/FenceD3D11.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
#include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
#include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
||||||
#include "mozilla/layers/HelpersD3D11.h"
|
#include "mozilla/layers/HelpersD3D11.h"
|
||||||
#include "mozilla/layers/VideoProcessorD3D11.h"
|
#include "mozilla/layers/VideoProcessorD3D11.h"
|
||||||
@@ -716,7 +716,7 @@ DXGIYCbCrTextureData* DXGIYCbCrTextureData::Create(
|
|||||||
const RefPtr<gfx::FileHandleWrapper> sharedHandleCr =
|
const RefPtr<gfx::FileHandleWrapper> sharedHandleCr =
|
||||||
new gfx::FileHandleWrapper(UniqueFileHandle(handleCr));
|
new gfx::FileHandleWrapper(UniqueFileHandle(handleCr));
|
||||||
|
|
||||||
auto* fenceHolderMap = GpuProcessD3D11FencesHolderMap::Get();
|
auto* fenceHolderMap = CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fenceHolderMap) {
|
if (!fenceHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return nullptr;
|
return nullptr;
|
||||||
@@ -766,7 +766,7 @@ DXGIYCbCrTextureData::DXGIYCbCrTextureData(
|
|||||||
mHandles{aHandles[0], aHandles[1], aHandles[2]} {}
|
mHandles{aHandles[0], aHandles[1], aHandles[2]} {}
|
||||||
|
|
||||||
DXGIYCbCrTextureData::~DXGIYCbCrTextureData() {
|
DXGIYCbCrTextureData::~DXGIYCbCrTextureData() {
|
||||||
auto* fenceHolderMap = GpuProcessD3D11FencesHolderMap::Get();
|
auto* fenceHolderMap = CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fenceHolderMap) {
|
if (!fenceHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return;
|
return;
|
||||||
@@ -1457,7 +1457,7 @@ void DXGIYCbCrTextureHostD3D11::NotifyNotUsed() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto* fenceHolderMap = GpuProcessD3D11FencesHolderMap::Get();
|
auto* fenceHolderMap = CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fenceHolderMap) {
|
if (!fenceHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
|
|||||||
"IMFYCbCrImage.cpp",
|
"IMFYCbCrImage.cpp",
|
||||||
]
|
]
|
||||||
EXPORTS.mozilla.layers += [
|
EXPORTS.mozilla.layers += [
|
||||||
|
"d3d11/CompositeProcessD3D11FencesHolderMap.h",
|
||||||
"d3d11/CompositorD3D11.h",
|
"d3d11/CompositorD3D11.h",
|
||||||
"d3d11/DeviceAttachmentsD3D11.h",
|
"d3d11/DeviceAttachmentsD3D11.h",
|
||||||
"d3d11/FenceD3D11.h",
|
"d3d11/FenceD3D11.h",
|
||||||
"d3d11/GpuProcessD3D11FencesHolderMap.h",
|
|
||||||
"d3d11/GpuProcessD3D11TextureMap.h",
|
"d3d11/GpuProcessD3D11TextureMap.h",
|
||||||
"d3d11/HelpersD3D11.h",
|
"d3d11/HelpersD3D11.h",
|
||||||
"d3d11/ShaderDefinitionsD3D11.h",
|
"d3d11/ShaderDefinitionsD3D11.h",
|
||||||
@@ -47,8 +47,8 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
|
|||||||
"d3d11/VideoProcessorD3D11.h",
|
"d3d11/VideoProcessorD3D11.h",
|
||||||
]
|
]
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
|
"d3d11/CompositeProcessD3D11FencesHolderMap.cpp",
|
||||||
"d3d11/FenceD3D11.cpp",
|
"d3d11/FenceD3D11.cpp",
|
||||||
"d3d11/GpuProcessD3D11FencesHolderMap.cpp",
|
|
||||||
"d3d11/GpuProcessD3D11TextureMap.cpp",
|
"d3d11/GpuProcessD3D11TextureMap.cpp",
|
||||||
"d3d11/TextureD3D11.cpp",
|
"d3d11/TextureD3D11.cpp",
|
||||||
"d3d11/TextureHostWrapperD3D11.cpp",
|
"d3d11/TextureHostWrapperD3D11.cpp",
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
# include "gfxWindowsPlatform.h"
|
# include "gfxWindowsPlatform.h"
|
||||||
# include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
# include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
# include "mozilla/widget/WinWindowOcclusionTracker.h"
|
# include "mozilla/widget/WinWindowOcclusionTracker.h"
|
||||||
#elif defined(XP_DARWIN)
|
#elif defined(XP_DARWIN)
|
||||||
# include "gfxPlatformMac.h"
|
# include "gfxPlatformMac.h"
|
||||||
@@ -1338,7 +1338,7 @@ void gfxPlatform::InitLayersIPC() {
|
|||||||
#endif
|
#endif
|
||||||
if (!gfxConfig::IsEnabled(Feature::GPU_PROCESS)) {
|
if (!gfxConfig::IsEnabled(Feature::GPU_PROCESS)) {
|
||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
GpuProcessD3D11FencesHolderMap::Init();
|
CompositeProcessD3D11FencesHolderMap::Init();
|
||||||
#endif
|
#endif
|
||||||
RemoteTextureMap::Init();
|
RemoteTextureMap::Init();
|
||||||
wr::RenderThread::Start(GPUProcessManager::Get()->AllocateNamespace());
|
wr::RenderThread::Start(GPUProcessManager::Get()->AllocateNamespace());
|
||||||
@@ -1395,7 +1395,7 @@ void gfxPlatform::ShutdownLayersIPC() {
|
|||||||
StaticPrefs::GetPrefName_gfx_webrender_blob_tile_size()));
|
StaticPrefs::GetPrefName_gfx_webrender_blob_tile_size()));
|
||||||
}
|
}
|
||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
GpuProcessD3D11FencesHolderMap::Shutdown();
|
CompositeProcessD3D11FencesHolderMap::Shutdown();
|
||||||
widget::WinWindowOcclusionTracker::ShutDown();
|
widget::WinWindowOcclusionTracker::ShutDown();
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
@@ -3980,7 +3980,7 @@ void gfxPlatform::DisableGPUProcess() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(XP_WIN)
|
#if defined(XP_WIN)
|
||||||
GpuProcessD3D11FencesHolderMap::Init();
|
CompositeProcessD3D11FencesHolderMap::Init();
|
||||||
#endif
|
#endif
|
||||||
RemoteTextureMap::Init();
|
RemoteTextureMap::Init();
|
||||||
// We need to initialize the parent process to prepare for WebRender if we
|
// We need to initialize the parent process to prepare for WebRender if we
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
#include "mozilla/gfx/Logging.h"
|
#include "mozilla/gfx/Logging.h"
|
||||||
#include "mozilla/layers/FenceD3D11.h"
|
#include "mozilla/layers/FenceD3D11.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
#include "mozilla/layers/GpuProcessD3D11TextureMap.h"
|
||||||
#include "mozilla/layers/GpuProcessD3D11FencesHolderMap.h"
|
#include "mozilla/layers/CompositeProcessD3D11FencesHolderMap.h"
|
||||||
#include "mozilla/layers/TextureD3D11.h"
|
#include "mozilla/layers/TextureD3D11.h"
|
||||||
|
|
||||||
namespace mozilla {
|
namespace mozilla {
|
||||||
@@ -371,7 +371,7 @@ bool RenderDXGITextureHost::LockInternal() {
|
|||||||
|
|
||||||
if (!mLocked) {
|
if (!mLocked) {
|
||||||
if (mFencesHolderId.isSome()) {
|
if (mFencesHolderId.isSome()) {
|
||||||
auto* fencesHolderMap = layers::GpuProcessD3D11FencesHolderMap::Get();
|
auto* fencesHolderMap = layers::CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fencesHolderMap) {
|
if (!fencesHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return false;
|
return false;
|
||||||
@@ -642,7 +642,7 @@ bool RenderDXGIYCbCrTextureHost::EnsureD3D11Texture2D(ID3D11Device* aDevice) {
|
|||||||
|
|
||||||
bool RenderDXGIYCbCrTextureHost::LockInternal() {
|
bool RenderDXGIYCbCrTextureHost::LockInternal() {
|
||||||
if (!mLocked) {
|
if (!mLocked) {
|
||||||
auto* fencesHolderMap = layers::GpuProcessD3D11FencesHolderMap::Get();
|
auto* fencesHolderMap = layers::CompositeProcessD3D11FencesHolderMap::Get();
|
||||||
if (!fencesHolderMap) {
|
if (!fencesHolderMap) {
|
||||||
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
MOZ_ASSERT_UNREACHABLE("unexpected to be called");
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user