Bug 178819 - [MSE][GStreamer] Fix hang on clearing/destroying AppendPipeline
Summary: [MSE][GStreamer] Fix hang on clearing/destroying AppendPipeline
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: WebKit Local Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Enrique Ocaña
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-10-25 11:40 PDT by Enrique Ocaña
Modified: 2017-11-15 12:45 PST (History)
3 users (show)

See Also:


Attachments
Patch (1.93 KB, patch)
2017-10-25 11:45 PDT, Enrique Ocaña
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Enrique Ocaña 2017-10-25 11:40:24 PDT
A deadlock may occur when UI thread tries to clear pipeline in AppendPipeline::clearPlayerPrivate() while parser thread tries to change pipeline state to pause holding the stream lock in AppendPipeline::connectDemuxerSrcPadToAppsinkFromAnyThread().

This issue has been fixed downstream in https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/392
Comment 1 Enrique Ocaña 2017-10-25 11:45:43 PDT
Created attachment 324859 [details]
Patch
Comment 2 WebKit Commit Bot 2017-10-26 03:31:42 PDT
Comment on attachment 324859 [details]
Patch

Clearing flags on attachment: 324859

Committed r224012: <https://trac.webkit.org/changeset/224012>
Comment 3 WebKit Commit Bot 2017-10-26 03:31:44 PDT
All reviewed patches have been landed.  Closing bug.
Comment 4 Radar WebKit Bug Importer 2017-11-15 12:45:25 PST
<rdar://problem/35568087>