bugGnash - The GNU Flash player - Bugs: bug #32557, Thread deadlocking in sound_handler

 
 

bug #32557: Thread deadlocking in sound_handler

Submitted by:  Benjamin Wolsey <bwy>
Submitted on:  Mon 21 Feb 2011 02:42:31 PM UTC  
 
Category: soundSeverity: 5 - Blocker
Release: NoneStatus: Fixed
Privacy: PublicAssigned to: Bastiaan Jacques <bjacques>
Open/Closed: Closed

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Tue 22 Feb 2011 07:51:32 AM UTC, comment #2:

Fixed, thanks.

Benjamin Wolsey <bwy>
Project Member
Mon 21 Feb 2011 07:16:17 PM UTC, comment #1:

Just to make sure we're on the same page, could you please provide backtraces including all threads?

Bastiaan Jacques <bjacques>
Project MemberIn charge of this item.
Mon 21 Feb 2011 02:42:31 PM UTC, original submission:

Deadlocks observed in two cases so far:

feed.swf during playback (consistently as the two pigeons cross for the first time):

#0 __lll_lock_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1 0x00007ffff79720e9 in _L_lock_953 () from /lib/libpthread.so.0
#2 0x00007ffff7971f0b in __pthread_mutex_lock (mutex=0x6b7b20)
at pthread_mutex_lock.c:61
#3 0x00007ffff69cd5a3 in boost::mutex::lock (this=0x7fffffffb480, m_=...)
at /usr/include/boost/thread/pthread/mutex.hpp:50
#4 boost::unique_lock<boost::mutex>::lock (this=0x7fffffffb480, m_=...)
at /usr/include/boost/thread/locks.hpp:349
#5 unique_lock (this=0x7fffffffb480, m_=...)
at /usr/include/boost/thread/locks.hpp:227
#6 0x00007ffff69cbf98 in gnash::sound::SDL_sound_handler::unplugInputStream (
this=0x6b7a80, id=0x876d60)
at /home/benjamin/Downloads/gnash/trunk/libsound/sdl/sound_handler_sdl.cpp:344
#7 0x00007ffff69bc018 in gnash::sound::sound_handler::stopEmbedSoundInstances
(this=0x6b7a80, def=...)
at /home/benjamin/Downloads/gnash/trunk/libsound/sound_handler.cpp:234
#8 0x00007ffff69bc088 in gnash::sound::sound_handler::stop_all_sounds (
this=0x6b7a80)
at /home/benjamin/Downloads/gnash/trunk/libsound/sound_handler.cpp:143
#9 0x00007ffff69cc138 in gnash::sound::SDL_sound_handler::stop_all_sounds (
this=0x6b7a80)

u2_has.swf on exit:

#0 __lll_lock_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1 0x00007ffff79720e9 in _L_lock_953 () from /lib/libpthread.so.0
#2 0x00007ffff7971f0b in __pthread_mutex_lock (mutex=0x6b7a80)
at pthread_mutex_lock.c:61
#3 0x00007ffff69cd523 in boost::mutex::lock (this=0x7fffffffbf40, m_=...)
at /usr/include/boost/thread/pthread/mutex.hpp:50
#4 boost::unique_lock<boost::mutex>::lock (this=0x7fffffffbf40, m_=...)
at /usr/include/boost/thread/locks.hpp:349
#5 unique_lock (this=0x7fffffffbf40, m_=...)
at /usr/include/boost/thread/locks.hpp:227
#6 0x00007ffff69cbf18 in gnash::sound::SDL_sound_handler::unplugInputStream (
this=0x6b79e0, id=0x868740)
at /home/benjamin/Downloads/gnash/trunk/libsound/sdl/sound_handler_sdl.cpp:344
#7 0x00007ffff69bbf98 in gnash::sound::sound_handler::stopEmbedSoundInstances
(this=0x6b79e0, def=...)
at /home/benjamin/Downloads/gnash/trunk/libsound/sound_handler.cpp:234
#8 0x00007ffff69bd201 in gnash::sound::sound_handler::stop_sound (
this=0x6b7a80, sound_handle=0)
at /home/benjamin/Downloads/gnash/trunk/libsound/sound_handler.cpp:212
#9 0x00007ffff69ccb53 in gnash::sound::SDL_sound_handler::stop_sound (
this=0x6b79e0, soundHandle=0)
---Type <return> to continue, or q <return> to quit---
at /home/benjamin/Downloads/gnash/trunk/libsound/sdl/sound_handler_sdl.cpp:166
#10 0x00007ffff6ffad2b in gnash::MovieClip::stopStreamSound (this=0x84c620)
at /home/benjamin/Downloads/gnash/trunk/libcore/MovieClip.cpp:2031
#11 0x00007ffff6ffd420 in ~MovieClip (this=0x6b7a80,
__in_chrg=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/libcore/MovieClip.cpp:499
#12 0x00007ffff6fde2c6 in ~Movie (this=0x84c620,
__in_chrg=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/libcore/Movie.h:58
#13 ~SWFMovie (this=0x84c620, __in_chrg=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/libcore/SWFMovie.h:60
#14 0x00007ffff64e7f87 in ~GC (this=0x7fffffffc318,
__in_chrg=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/libbase/GC.cpp:62
#15 0x00007ffff6fe1f3a in ~movie_root (this=0x7fffffffc300,
__in_chrg=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/libcore/movie_root.cpp:195
#16 0x000000000044a403 in gnash::Player::run (this=<value optimized out>,
argc=<value optimized out>, argv=0x7fffffffe7e8,
infile=<value optimized out>, url=<value optimized out>)
at /home/benjamin/Downloads/gnash/trunk/gui/Player.cpp:653
#17 0x000000000042665b in main (argc=<value optimized out>,

Benjamin Wolsey <bwy>
Project Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by bjacques (Posted a comment)
  • -unavailable- added by bwy (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 5 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 22 Feb 2011 07:51:32 AM UTCbwyStatusReady For Test=>Fixed
      Open/ClosedOpen=>Closed
    Mon 21 Feb 2011 08:05:39 PM UTCbjacquesStatusIn Progress=>Ready For Test
    Mon 21 Feb 2011 07:16:17 PM UTCbjacquesCategoryNone=>sound
      StatusNone=>In Progress

    Back to the top


    Powered by Savane 3.1-cleanup1