[gstreamer-bugs] [Bug 507527] Mixer eats 100% cpu when audio device goes away

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sun Oct 3 02:45:04 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=507527
  GStreamer | gst-plugins-base | 0.10.x

--- Comment #12 from Alex Riesen <raa.lkml at gmail.com> 2010-10-03 09:45:01 UTC ---
(In reply to comment #5)
> |  poll (pfds, rnfds + 1, -1);
> 
> i.e., a poll with infinite timeout.  Unfortunately, gstreamer doesn't check the
> return value of poll, so if the device disappears, the poll() will return
> immediately with an error rather than waiting indefinately, and gstreamer will
> keep calling the function and cause the cpu hog.

BTW, poll will NOT return with an error. A non-handle (or a closed handle)
passed to poll does not cause it to fail, to return the corresponding
pollfd->revents with the flag POLLNVAL (which is *almost* the case here).
The poll(2) will return a valid return value stating number of elements
in the passed array of pollfd structures with .revents field set to non-0.

-- 
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