Bug 1863872 Comment 20 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

> If you have a crash stack that shows some details of what's going on on the GPU process it would be handy.

With the STR,  by attaching debugger to GPU process, I got the following stack.

>	[インライン フレーム] xul.dll!d3d12::com::impl$2::clone(d3d12::com::ComPtr<winapi::um::d3d12::ID3D12Resource> * self) 行 69	Rust
 	xul.dll!wgpu_hal::dx12::device::impl$1::create_texture_view(wgpu_hal::dx12::Device * self, wgpu_hal::dx12::Texture * texture, wgpu_hal::TextureViewDescriptor * desc) 行 469	Rust
 	xul.dll!wgpu_core::device::resource::Device<wgpu_hal::dx12::Api>::create_texture_view<wgpu_hal::dx12::Api>(alloc::sync::Arc<wgpu_core::resource::Texture<wgpu_hal::dx12::Api>> * self, wgpu_core::resource::TextureViewDescriptor * texture) 行 1174	Rust
 	xul.dll!wgpu_core::global::Global<wgpu_bindings::identity::IdentityRecyclerFactory>::texture_create_view<wgpu_bindings::identity::IdentityRecyclerFactory,wgpu_hal::dx12::Api>(wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self, wgpu_core::resource::TextureViewDescriptor * texture_id, wgpu_core::id::Id<wgpu_core::resource::TextureView<wgpu_hal::empty::Api>> desc) 行 811	Rust
 	xul.dll!wgpu_bindings::server::Global::texture_action<wgpu_hal::dx12::Api>(wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self, enum2$<wgpu_bindings::TextureAction> self_id, wgpu_bindings::error::ErrorBuffer action) 行 771	Rust
 	xul.dll!wgpu_bindings::server::wgpu_server_texture_action(wgpu_bindings::server::Global * global, wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self_id, wgpu_bindings::ByteBuf * byte_buf, wgpu_bindings::error::ErrorBuffer error_buf) 行 933	Rust
 	xul.dll!mozilla::webgpu::WebGPUParent::RecvTextureAction(unsigned __int64 aTextureId, unsigned __int64 aDeviceId, const mozilla::ipc::ByteBuf & aByteBuf) 行 1297	C++
 	xul.dll!mozilla::webgpu::PWebGPUParent::OnMessageReceived(const IPC::Message & msg__) 行 420	C++
 	xul.dll!mozilla::gfx::PCanvasManagerParent::OnMessageReceived(const IPC::Message & msg__) 行 279	C++
 	xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) 行 1813	C++
 	xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) 行 1736	C++
 	xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) 行 1526	C++
 	xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() 行 1632	C++
 	xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) 行 1194	C++
 	xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) 行 480	C++
 	xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) 行 300	C++
 	[インライン フレーム] xul.dll!MessageLoop::RunInternal() 行 370	C++
 	xul.dll!MessageLoop::RunHandler() 行 364	C++
 	xul.dll!MessageLoop::Run() 行 346	C++
 	xul.dll!nsThread::ThreadFunc(void * aArg) 行 372	C++
 	nss3.dll!_PR_NativeRunThread(void * arg) 行 421	C
 	nss3.dll!pr_root(void * arg) 行 140	C
 	[外部コード]	
 	[インライン フレーム] mozglue.dll!mozilla::interceptor::FuncHook<mozilla::interceptor::WindowsDllInterceptor<mozilla::interceptor::VMSharingPolicyShared>,void (*)(int, void *, void *)>::operator()(int & aArgs, void * & aArgs, void * & aArgs) 行 150	C++
 	mozglue.dll!patched_BaseThreadInitThunk(int aIsInitialThread, void * aStartAddress, void * aThreadParam) 行 561	C++
 	[外部コード]
> If you have a crash stack that shows some details of what's going on on the GPU process it would be handy.

With the STR,  by attaching debugger to GPU process, I got the following stack.

>	[インライン フレーム] xul.dll!d3d12::com::impl$2::clone(d3d12::com::ComPtr<winapi::um::d3d12::ID3D12Resource> * self) 行 69	Rust
 	xul.dll!wgpu_hal::dx12::device::impl$1::create_texture_view(wgpu_hal::dx12::Device * self, wgpu_hal::dx12::Texture * texture, wgpu_hal::TextureViewDescriptor * desc) 行 469	Rust
 	xul.dll!wgpu_core::device::resource::Device<wgpu_hal::dx12::Api>::create_texture_view<wgpu_hal::dx12::Api>(alloc::sync::Arc<wgpu_core::resource::Texture<wgpu_hal::dx12::Api>> * self, wgpu_core::resource::TextureViewDescriptor * texture) 行 1174	Rust
 	xul.dll!wgpu_core::global::Global<wgpu_bindings::identity::IdentityRecyclerFactory>::texture_create_view<wgpu_bindings::identity::IdentityRecyclerFactory,wgpu_hal::dx12::Api>(wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self, wgpu_core::resource::TextureViewDescriptor * texture_id, wgpu_core::id::Id<wgpu_core::resource::TextureView<wgpu_hal::empty::Api>> desc) 行 811	Rust
 	xul.dll!wgpu_bindings::server::Global::texture_action<wgpu_hal::dx12::Api>(wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self, enum2$<wgpu_bindings::TextureAction> self_id, wgpu_bindings::error::ErrorBuffer action) 行 771	Rust
 	xul.dll!wgpu_bindings::server::wgpu_server_texture_action(wgpu_bindings::server::Global * global, wgpu_core::id::Id<wgpu_core::resource::Texture<wgpu_hal::empty::Api>> self_id, wgpu_bindings::ByteBuf * byte_buf, wgpu_bindings::error::ErrorBuffer error_buf) 行 933	Rust
 	xul.dll!mozilla::webgpu::WebGPUParent::RecvTextureAction(unsigned __int64 aTextureId, unsigned __int64 aDeviceId, const mozilla::ipc::ByteBuf & aByteBuf) 行 1297	C++
 	xul.dll!mozilla::webgpu::PWebGPUParent::OnMessageReceived(const IPC::Message & msg__) 行 420	C++
 	xul.dll!mozilla::gfx::PCanvasManagerParent::OnMessageReceived(const IPC::Message & msg__) 行 279	C++
 	xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) 行 1813	C++
 	xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) 行 1736	C++
 	xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) 行 1526	C++
 	xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() 行 1632	C++
 	xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) 行 1194	C++
 	xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) 行 480	C++
 	xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) 行 300	C++
 	[インライン フレーム] xul.dll!MessageLoop::RunInternal() 行 370	C++
 	xul.dll!MessageLoop::RunHandler() 行 364	C++
 	xul.dll!MessageLoop::Run() 行 346	C++
 	xul.dll!nsThread::ThreadFunc(void * aArg) 行 372	C++
 	nss3.dll!_PR_NativeRunThread(void * arg) 行 421	C
 	nss3.dll!pr_root(void * arg) 行 140	C
 	[外部コード]	
 	[インライン フレーム] mozglue.dll!mozilla::interceptor::FuncHook<mozilla::interceptor::WindowsDllInterceptor<mozilla::interceptor::VMSharingPolicyShared>,void (*)(int, void *, void *)>::operator()(int & aArgs, void * & aArgs, void * & aArgs) 行 150	C++
 	mozglue.dll!patched_BaseThreadInitThunk(int aIsInitialThread, void * aStartAddress, void * aThreadParam) 行 561	C++
 	[外部コード]


texture.resource.clone() was failed since txture.resource was nullptr.

Back to Bug 1863872 Comment 20