Closed Bug 1672621 Opened 5 years ago Closed 5 years ago

Crash in [@ mozilla::layers::TextureClientRecycleAllocator::CreateOrRecycle]

Categories

(Core :: Audio/Video: Playback, defect, P1)

defect

Tracking

()

RESOLVED FIXED
84 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox81 --- unaffected
firefox82 --- unaffected
firefox83 --- unaffected
firefox84 + fixed

People

(Reporter: aryx, Assigned: mattwoodrow)

References

(Regression)

Details

(Keywords: crash, regression)

Crash Data

Attachments

(1 file)

Crash report: https://crash-stats.mozilla.org/report/index/05f27106-e515-4fed-8203-260e50201022

Reason: EXCEPTION_ACCESS_VIOLATION_READ

Top 10 frames of crashing thread:

0 xul.dll mozilla::layers::TextureClientRecycleAllocator::CreateOrRecycle gfx/layers/client/TextureClientRecycleAllocator.cpp:153
1 xul.dll mozilla::layers::D3D11RecycleAllocator::CreateOrRecycleClient gfx/layers/D3D11ShareHandleImage.cpp:183
2 xul.dll mozilla::layers::D3D11ShareHandleImage::AllocateTexture gfx/layers/D3D11ShareHandleImage.cpp:39
3 xul.dll mozilla::D3D11DXVA2Manager::CopyToImage dom/media/platforms/wmf/DXVA2Manager.cpp:912
4 xul.dll mozilla::WMFVideoMFTManager::CreateD3DVideoFrame dom/media/platforms/wmf/WMFVideoMFTManager.cpp:966
5 xul.dll mozilla::WMFVideoMFTManager::Output dom/media/platforms/wmf/WMFVideoMFTManager.cpp:1098
6 xul.dll mozilla::WMFMediaDataDecoder::ProcessOutput dom/media/platforms/wmf/WMFMediaDataDecoder.cpp:154
7 xul.dll mozilla::WMFMediaDataDecoder::ProcessDecode dom/media/platforms/wmf/WMFMediaDataDecoder.cpp:143
8 xul.dll mozilla::detail::ProxyRunnable<mozilla::MozPromise<nsTArray<RefPtr<mozilla::MediaData> >, mozilla::MediaResult, 1>, RefPtr<mozilla::MozPromise<nsTArray<RefPtr<mozilla::MediaData> >, mozilla::MediaResult, 1> >  xpcom/threads/MozPromise.h:1457
9 xul.dll mozilla::TaskQueue::Runner::Run xpcom/threads/TaskQueue.cpp:158
Flags: needinfo?(jyavenard)

This is crashing because GetAllocator() returns nullptr.

Looks like that can only be null if the TextureClient was created without one, and given that this is D3D11ShareHandleImage, that must mean this code returned nullptr: https://searchfox.org/mozilla-central/rev/ff85081e3b05f89f9a5921b489b6e01ed4a88c25/gfx/layers/D3D11ShareHandleImage.cpp#124

Looks like that can happen in the RDD process, if the GPU process has crashed: https://searchfox.org/mozilla-central/rev/ff85081e3b05f89f9a5921b489b6e01ed4a88c25/dom/media/ipc/RemoteVideoDecoder.cpp#38

Assignee: nobody → matt.woodrow
Flags: needinfo?(jyavenard)
Severity: -- → S1
Pushed by jyavenard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a4341527c628 Don't create new texture clients if our forwarder has gone away. r=jya
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 84 Branch
Has Regression Range: --- → yes
Priority: -- → P1
See Also: → 1975607
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: