After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 633176 - recent multiqueue changes break DVD playback
recent multiqueue changes break DVD playback
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal blocker
: 0.10.31
Assigned To: Jan Schmidt
GStreamer Maintainers
: 630650 631174 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-10-26 11:37 UTC by Jan Schmidt
Modified: 2010-10-27 21:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
unit test case to reproduce the problem (5.28 KB, patch)
2010-10-27 13:47 UTC, Jan Schmidt
committed Details | Review
proposed fix (3.12 KB, patch)
2010-10-27 15:21 UTC, Jan Schmidt
none Details | Review
proposed fix for 633176 (3.12 KB, patch)
2010-10-27 15:26 UTC, Jan Schmidt
committed Details | Review

Description Jan Schmidt 2010-10-26 11:37:09 UTC
Specifically, the combination of these 2 commits, although 33082eb9e42c52e4df848195946f1b7bbce768c5 seems to be the culprit.

commit 518364e7acbcb4f917943060440323fa554f9631
Author: Edward Hervey <bilboed@bilboed.com>
Date:   Fri Oct 8 12:54:52 2010 +0200

    multiqueue: Remove unused variable and simplify code
    
    oldid was only used when we were doing multiple pops per loop.

commit 33082eb9e42c52e4df848195946f1b7bbce768c5
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Fri Aug 27 16:52:12 2010 +0200

    multiqueue: Don't do an infinite loop in the loop function
    
    Instead return after every iteration, which makes sure that the
    stream lock is released for a short time after every iteration,
    task state changes are checked, etc and this allows the task
    to be stopped properly.
Comment 1 Jan Schmidt 2010-10-27 13:47:26 UTC
Created attachment 173325 [details] [review]
unit test case to reproduce the problem
Comment 2 Jan Schmidt 2010-10-27 15:21:13 UTC
Created attachment 173330 [details] [review]
proposed fix

fix that reintroduces the oldid variable, but as a state variable on the respective SingleQueues
Comment 3 Jan Schmidt 2010-10-27 15:26:48 UTC
Created attachment 173332 [details] [review]
proposed fix for 633176

updated patch - same as before, with the commit message corrected.
Comment 4 Edward Hervey 2010-10-27 16:17:15 UTC
commit 691807d634240faf21e68cf58d730141cba9f115
Author: Jan Schmidt <thaytan@noraisin.net>
Date:   Wed Oct 27 18:12:36 2010 +0200

    multiqueue: Fix tracking of unlinked streams.
    
    33082eb9e42c52e4df848195946f1b7bbce768c5 introduced a bug
    preventing sparse unlinked streams from advancing properly,
    leading to the queue blocking.
    
    Fixes: #633176

commit 6d590c65e5c6679102d1ea897c25c01ba2ad843b
Author: Jan Schmidt <thaytan@noraisin.net>
Date:   Wed Oct 27 18:11:35 2010 +0200

    tests: Add a multiqueue sparse streams test
Comment 5 Jan Schmidt 2010-10-27 21:25:01 UTC
*** Bug 631174 has been marked as a duplicate of this bug. ***
Comment 6 Jan Schmidt 2010-10-27 21:25:45 UTC
*** Bug 630650 has been marked as a duplicate of this bug. ***