[Bug 701543] v4l2: call VIDIOC_REQBUFS with count = 0 in pool_finalize
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Tue Jun 4 01:53:50 PDT 2013
https://bugzilla.gnome.org/show_bug.cgi?id=701543
GStreamer | gst-plugins-good | git
Wim Taymans <wim.taymans> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
CC| |wim.taymans at gmail.com
Resolution| |FIXED
Target Milestone|HEAD |1.1.1
--- Comment #1 from Wim Taymans <wim.taymans at gmail.com> 2013-06-04 08:53:45 UTC ---
commit 3417a791acdd364c86974552550f853a9c56f5b9
Author: Michael Olbrich <m.olbrich at pengutronix.de>
Date: Mon Jun 3 17:07:10 2013 +0200
v4l2: call VIDIOC_REQBUFS with count = 0 in pool_finalize
Without this the following sequence fails:
- set_caps()
- object_stop() (does nothing)
- set_format() -> VIDIOC_S_FMT
- set_config() -> VIDIOC_REQBUFS with count = N
- set_caps()
- object_stop()
- pool_finalize()
- set_format() -> VIDIOC_S_FMT => EBUSY
Usually the pool is started after set_config(), in which case object_stop()
will result in a pool_stop and therefore VIDIOC_REQBUFS with count = 0 but
that is not guaranteed.
Also calling VIDIOC_REQBUFS with count = 0 in pool_finalize() if necessary
fixes this problem.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=701543
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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