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