RESOLVED DUPLICATE of bug 275583274152
[DRM] DRMDeviceManager::mainDeviceNode() should be made thread-safe
https://bugs.webkit.org/show_bug.cgi?id=274152
Summary [DRM] DRMDeviceManager::mainDeviceNode() should be made thread-safe
Philippe Normand
Reported 2024-05-14 06:56:12 PDT
And usable from non-main threads. That's a requirement for the media backend. ASSERTION FAILED: Unsafe to ref/deref from different threads m_isOwnedByMainThread == isMainThread() /var/home/phil/WebKit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/RefCounted.h(119) : void WTF::RefCountedBase::applyRefDerefThreadingCheck() const 1 0x7fbc642f5729 WTFCrash 2 0x7fbc6c4c3e8a WTF::RefCountedBase::applyRefDerefThreadingCheck() const 3 0x7fbc6c4e9729 WTF::RefCountedBase::refAllowingPartiallyDestroyed() const 4 0x7fbc6c4e9700 WTF::RefCountedBase::ref() const 5 0x7fbc6dcdc78e WTF::DefaultRefDerefTraits<WebCore::DRMDeviceNode>::refIfNotNull(WebCore::DRMDeviceNode*) 6 0x7fbc6dcdc749 WTF::RefPtr<WebCore::DRMDeviceNode, WTF::RawPtrTraits<WebCore::DRMDeviceNode>, WTF::DefaultRefDerefTraits<WebCore::DRMDeviceNode> >::RefPtr(WTF::RefPtr<WebCore::DRMDeviceNode, WTF::RawPtrTrait s<WebCore::DRMDeviceNode>, WTF::DefaultRefDerefTraits<WebCore::DRMDeviceNode> > const&) 7 0x7fbc720921b6 WebCore::DRMDeviceManager::mainDeviceNode(WebCore::DRMDeviceManager::NodeType) const 8 0x7fbc72092239 WebCore::DRMDeviceManager::mainGBMDeviceNode(WebCore::DRMDeviceManager::NodeType) const 9 0x7fbc7209c165 WebCore::GBMBufferSwapchain::getBuffer(WebCore::GBMBufferSwapchain::BufferDescription const&) 10 0x7fbc720e1e4f WebCore::MediaPlayerPrivateGStreamer::pushDMABufToCompositor() 11 0x7fbc720e4024 WebCore::MediaPlayerPrivateGStreamer::triggerRepaint(WTF::GRefPtr<_GstSample>&&) 12 0x7fbc720ba05b webKitVideoSinkSetMediaPlayerPrivate(_GstElement*, WebCore::MediaPlayerPrivateGStreamer*)::$_2::operator()(_GstElement*, WebCore::MediaPlayerPrivateGStreamer*) const 13 0x7fbc720b9e51 webKitVideoSinkSetMediaPlayerPrivate(_GstElement*, WebCore::MediaPlayerPrivateGStreamer*)::$_2::__invoke(_GstElement*, WebCore::MediaPlayerPrivateGStreamer*) 14 0x7fbc5ae70056 ffi_call_unix64 15 0x7fbc5ae6c6a0 ffi_call_int.lto_priv.0 16 0x7fbc5ae6f4ee ffi_call 17 0x7fbc64def5e0 g_cclosure_marshal_generic_va 18 0x7fbc64e08e14 signal_emit_valist_unlocked 19 0x7fbc64e08f21 g_signal_emit_valist 20 0x7fbc64e08fe3 g_signal_emit 21 0x7fbc5d8695bc gst_app_sink_preroll 22 0x7fbc5d813cd4 gst_base_sink_do_preroll 23 0x7fbc5d814694 gst_base_sink_do_sync 24 0x7fbc5d81587b gst_base_sink_chain_unlocked 25 0x7fbc5d8182d7 gst_base_sink_chain_main 26 0x7fbc5d70929e gst_pad_chain_data_unchecked 27 0x7fbc5d70b66e gst_pad_push_data 28 0x7fbc5d713058 gst_pad_push 29 0x7fbc5d6f5406 gst_proxy_pad_chain_default 30 0x7fbc5d70929e gst_pad_chain_data_unchecked 31 0x7fbc5d70b66e gst_pad_push_data
Attachments
Philippe Normand
Comment 1 2024-06-18 00:50:59 PDT
*** This bug has been marked as a duplicate of bug 275583 ***
Note You need to log in before you can comment on or make changes to this bug.