[Bug 791404] New: vaapipostproc: race condition between transform_caps and start for src caps
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Fri Dec 8 18:32:58 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=791404
Bug ID: 791404
Summary: vaapipostproc: race condition between transform_caps
and start for src caps
Classification: Platform
Product: GStreamer
Version: git master
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: gstreamer-vaapi
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: m.tretter at pengutronix.de
QA Contact: gstreamer-bugs at lists.freedesktop.org
CC: bsreerenj at gmail.com, vjaquez at igalia.com
GNOME version: ---
Created attachment 365265
--> https://bugzilla.gnome.org/attachment.cgi?id=365265&action=edit
0001-vaapipostproc-lock-ensure_filter-with-postproc_lock.patch
The vaapipostproc element contains a race between
gst_vaapipostproc_transform_caps and gst_vaapipostproc_start for
postproc->allowed_srcpad_caps.
The caps are copied with the postproc_lock (introduced in
https://bugzilla.gnome.org/show_bug.cgi?id=766940) held via
gst_vaapipostproc_transform_caps -> gst_vaapipostproc_transform_caps_impl ->
gst_vaapipostproc_transform_srccaps -> gst_caps_get_structure
And the same structure is released without holding the lock in
gst_vaapipostproc_start -> gst_vaapipostproc_ensure_filter -> gst_caps_replace
The call from gst_vaapipostproc_start to gst_vaapipostproc_ensure_filter should
also be protected by the postproc_lock.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list