GNOME Bugzilla – Bug 488308
blocks for 25s after volume key press sometimes
Last modified: 2010-07-15 11:31:03 UTC
Please describe the problem: When Rhythmbox is the active window and that I hit one of the control buttons (on my laptop) to increase or decrease the volume, Rhythmbox freezes for approximately 20 seconds and sometimes makes the other applications freeze also. This problem doesn't happen when Rhythmbox is not the active window, and it did not occur with the previous version of rhythmbox I used (0.10.0). Steps to reproduce: 1. Make Rhythmbox the active window 2. Press one the 3 buttons to control volume (increase, decrease or mute) Actual results: Rhythmbox freezes for approximately 20 seconds. It also makes the other applications freeze. However it doesn't affect playback, but the volume doesn't change. When the 20 seconds are passed, everything returns to normal and the sound volume is changed. Expected results: The sound should adjust immediately without affecting rhythmbox or the other applications (like in previous versions). Does this happen every time? Yes Other information: My laptop is a dell 6400 and the control buttons work fine with the other applications I use.
I can confirm this. It will not happen 100% of the time; however if you let the volume "window" disappear and hit another volume key, it might work again. On average, this happens about 30% of the time. More conditions: 1. Rb is active window 2. Press a button 3. No freeze? Wait for the volume dialog to disappear, and try again. This is a regression. It seemed to work fine until the day GNOME 2.20 stable was released, ironically.
*** Bug 519120 has been marked as a duplicate of this bug. ***
*** Bug 531407 has been marked as a duplicate of this bug. ***
Deactivating the multimedia keys solved this for me. The problem is afaik that Rhythmbox fetches multimedia keys "the wrong way" (debug output said this for me but I don't have it anymore). Cheers
*** Bug 570634 has been marked as a duplicate of this bug. ***
Can anyone reproduce this with rhythmbox 0.11.5 or newer?
Yes. Using 0.11.6 on Ubuntu Intrepid. To add this from my duplicate: for me, this is only reproducible with compositing (no matter if Compiz's or Matacity's) on. (Sorry for the duplicate.)
I also have this problem. Version: 0.12.5-0Ubuntu5.2 Using laptop shortcut keys causes the programme and sometimes the whole OS to freeze for 30 seconds or more. I'm using an Asus EeePC, so we can rule out it being specific to a particular laptop. This did not happen with previous versions.
*** Bug 612739 has been marked as a duplicate of this bug. ***
According to bug 612739, this may be related to the mmkeys plugin re-grabbing the media keys when the window regains focus. Could someone affected by this bug please provide output from 'dbus-monitor --profile' from around the time the problem occurs?
I have this problem as well, on Ubuntu Karmic. I tried dbus-monitor --profile, and the output was this: mc 1272169746 946255 321 :1.1585 /org/gnome/SettingsDaemon/MediaKeys org.gnome.SettingsDaemon.MediaKeys GrabMediaPlayerKeys mr 1272169746 956771 5204 321 :1.1585 mc 1272169748 779798 5205 :1.12 /org/freedesktop/Notifications org.freedesktop.Notifications GetServerInformation mr 1272169748 780247 10352 5205 :1.12 mc 1272169748 780670 5206 :1.12 /org/freedesktop/Notifications org.freedesktop.Notifications GetCapabilities mr 1272169748 781058 10353 5206 :1.12 mc 1272169748 781930 5207 :1.12 /org/freedesktop/Notifications org.freedesktop.Notifications Notify mc 1272169748 922559 322 :1.1585 /org/gnome/SettingsDaemon/MediaKeys org.gnome.SettingsDaemon.MediaKeys GrabMediaPlayerKeys mc 1272169765 632359 16586 :1.75 /org/freedesktop/DBus org.freedesktop.DBus RemoveMatch mr 1272169773 806974 5208 322 :1.1585 mr 1272169773 816510 10354 5207 :1.12 sig 1272169776 209653 10355 /org/freedesktop/Notifications org.freedesktop.Notifications NotificationClosed The only part of it that happened during the freeze itself was "RemoveMatch".
Thanks. mc 1272169748 922559 322 :1.1585 /org/gnome/SettingsDaemon/MediaKeys org.gnome.SettingsDaemon.MediaKeys GrabMediaPlayerKeys mr 1272169773 806974 5208 322 :1.1585 This shows the dbus call to re-grab the media keys taking 25 seconds. This probably means that gnome-settings-daemon is blocking somewhere, preventing it from handling the dbus call. If you could provide a stack trace from gnome-settings-daemon during this period, that would help track down the cause. Meanwhile in commit d95027b I've updated the mmkeys plugin to use an asynchronous call, so at least the rhythmbox UI shouldn't be blocked while this is happening.
Okay. How do I get a stack trace?
See http://live.gnome.org/GettingTraces for details, but in short: 0) ensure you have debug symbols for gnome-settings-daemon, glib, and dbus (at least) 1) run gdb gnome-settings-daemon `pidof gnome-settings-daemon`; at the '(gdb)' prompt, type 'continue' and hit enter 2) adjust the volume until the problem occurs 3) hit ctrl-c in the terminal where you're running gdb 4) type 'thread apply all bt' in gdb, gather all the output and paste it in here.
Hi. I'm affected by this too. Stock ubuntu 10.04 with notify-osd and compiz. A symptom I have noticed is that *both* notify-osd and the "normal" gnome volume OSD show up in this case (but when rhythmbox is not focused and no hang happens, only the notify-osd one appears). This also happens with gnome-shell, so compiz is not the culprit. Here is the requested trace, I hope I did it properly. Let me know if it helps. jeff@kagami:~$ gdb gnome-settings-daemon 1261 GNU gdb (GDB) 7.1-ubuntu Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/gnome-settings-daemon...(no debugging symbols found)...done. Attaching to program: /usr/bin/gnome-settings-daemon, process 1261 Reading symbols from /usr/lib/libgtk-x11-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgtk-x11-2.0.so.0 Reading symbols from /usr/lib/libgconf-2.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgconf-2.so.4 Reading symbols from /usr/lib/libgmodule-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgmodule-2.0.so.0.2400.0...done. done. Loaded symbols for /usr/lib/libgmodule-2.0.so.0 Reading symbols from /usr/lib/libdbus-glib-1.so.2...Reading symbols from /usr/lib/debug/usr/lib/libdbus-glib-1.so.2.1.0...done. done. Loaded symbols for /usr/lib/libdbus-glib-1.so.2 Reading symbols from /lib/libdbus-1.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/libdbus-1.so.3 Reading symbols from /lib/tls/i686/cmov/libpthread.so.0...(no debugging symbols found)...done. [Thread debugging using libthread_db enabled] Loaded symbols for /lib/tls/i686/cmov/libpthread.so.0 Reading symbols from /usr/lib/libgobject-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgobject-2.0.so.0.2400.0...done. done. Loaded symbols for /usr/lib/libgobject-2.0.so.0 Reading symbols from /usr/lib/libgthread-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgthread-2.0.so.0.2400.0...done. done. Loaded symbols for /usr/lib/libgthread-2.0.so.0 Reading symbols from /lib/libglib-2.0.so.0...Reading symbols from /usr/lib/debug/lib/libglib-2.0.so.0.2400.0...done. done. Loaded symbols for /lib/libglib-2.0.so.0 Reading symbols from /lib/tls/i686/cmov/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libc.so.6 Reading symbols from /usr/lib/libgdk_pixbuf-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgdk_pixbuf-2.0.so.0 Reading symbols from /usr/lib/libgdk-x11-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgdk-x11-2.0.so.0 Reading symbols from /usr/lib/libpangocairo-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpangocairo-1.0.so.0 Reading symbols from /usr/lib/libX11.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libX11.so.6 Reading symbols from /usr/lib/libXcomposite.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXcomposite.so.1 Reading symbols from /usr/lib/libXdamage.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXdamage.so.1 Reading symbols from /usr/lib/libXfixes.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXfixes.so.3 Reading symbols from /usr/lib/libatk-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libatk-1.0.so.0 Reading symbols from /usr/lib/libcairo.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libcairo.so.2 Reading symbols from /usr/lib/libgio-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgio-2.0.so.0.2400.0...done. done. Loaded symbols for /usr/lib/libgio-2.0.so.0 Reading symbols from /usr/lib/libpangoft2-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpangoft2-1.0.so.0 Reading symbols from /usr/lib/libpango-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpango-1.0.so.0 Reading symbols from /usr/lib/libfreetype.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libfreetype.so.6 Reading symbols from /usr/lib/libfontconfig.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libfontconfig.so.1 Reading symbols from /lib/tls/i686/cmov/librt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/librt.so.1 Reading symbols from /lib/tls/i686/cmov/libm.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libm.so.6 Reading symbols from /usr/lib/libORBit-2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libORBit-2.so.0 Reading symbols from /lib/tls/i686/cmov/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libdl.so.2 Reading symbols from /lib/libpcre.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/libpcre.so.3 Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 Reading symbols from /usr/lib/libXext.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXext.so.6 Reading symbols from /usr/lib/libXrender.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXrender.so.1 Reading symbols from /usr/lib/libXinerama.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXinerama.so.1 Reading symbols from /usr/lib/libXi.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXi.so.6 Reading symbols from /usr/lib/libXrandr.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXrandr.so.2 Reading symbols from /usr/lib/libXcursor.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXcursor.so.1 Reading symbols from /lib/libz.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libz.so.1 Reading symbols from /usr/lib/libxcb.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb.so.1 Reading symbols from /usr/lib/libpixman-1.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpixman-1.so.0 Reading symbols from /usr/lib/libdirectfb-1.2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libdirectfb-1.2.so.0 Reading symbols from /usr/lib/libfusion-1.2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libfusion-1.2.so.0 Reading symbols from /usr/lib/libdirect-1.2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libdirect-1.2.so.0 Reading symbols from /lib/libpng12.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/libpng12.so.0 Reading symbols from /usr/lib/libxcb-render-util.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb-render-util.so.0 Reading symbols from /usr/lib/libxcb-render.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb-render.so.0 Reading symbols from /lib/tls/i686/cmov/libresolv.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libresolv.so.2 Reading symbols from /lib/libselinux.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libselinux.so.1 Reading symbols from /lib/libexpat.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libexpat.so.1 Reading symbols from /usr/lib/libXau.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXau.so.6 Reading symbols from /usr/lib/libXdmcp.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXdmcp.so.6 Reading symbols from /lib/tls/i686/cmov/libnss_compat.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libnss_compat.so.2 Reading symbols from /lib/tls/i686/cmov/libnsl.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libnsl.so.1 Reading symbols from /lib/tls/i686/cmov/libnss_nis.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libnss_nis.so.2 Reading symbols from /lib/tls/i686/cmov/libnss_files.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libnss_files.so.2 Reading symbols from /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so Reading symbols from /usr/lib/libcanberra-gtk.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libcanberra-gtk.so.0 Reading symbols from /usr/lib/libcanberra.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libcanberra.so.0 Reading symbols from /usr/lib/libvorbisfile.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libvorbisfile.so.3 Reading symbols from /usr/lib/libvorbis.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libvorbis.so.0 Reading symbols from /usr/lib/libogg.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libogg.so.0 Reading symbols from /usr/lib/libtdb.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libtdb.so.1 Reading symbols from /usr/lib/libltdl.so.7...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libltdl.so.7 Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libxrandr.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libxrandr.so Reading symbols from /usr/lib/libgnome-desktop-2.so.17...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnome-desktop-2.so.17 Reading symbols from /usr/lib/libnotify.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libnotify.so.1 Reading symbols from /usr/lib/libappindicator.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libappindicator.so.0 Reading symbols from /usr/lib/libstartup-notification-1.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libstartup-notification-1.so.0 Reading symbols from /usr/lib/libindicator.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libindicator.so.0 Reading symbols from /usr/lib/libjson-glib-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libjson-glib-1.0.so.0 Reading symbols from /usr/lib/libdbusmenu-gtk.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libdbusmenu-gtk.so.1 Reading symbols from /usr/lib/libdbusmenu-glib.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libdbusmenu-glib.so.1 Reading symbols from /usr/lib/libxcb-aux.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb-aux.so.0 Reading symbols from /usr/lib/libxcb-event.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb-event.so.1 Reading symbols from /usr/lib/libxcb-atom.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxcb-atom.so.1 Reading symbols from /usr/lib/libSM.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libSM.so.6 Reading symbols from /usr/lib/libICE.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libICE.so.6 Reading symbols from /usr/lib/libxml2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxml2.so.2 Reading symbols from /lib/libuuid.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libuuid.so.1 Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libxsettings.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libxsettings.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libsound.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libsound.so Reading symbols from /usr/lib/libpulse.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpulse.so.0 Reading symbols from /usr/lib/libXtst.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXtst.so.6 Reading symbols from /usr/lib/libpulsecommon-0.9.21.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpulsecommon-0.9.21.so Reading symbols from /lib/libwrap.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/libwrap.so.0 Reading symbols from /usr/lib/libsndfile.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libsndfile.so.1 Reading symbols from /usr/lib/libFLAC.so.8...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libFLAC.so.8 Reading symbols from /usr/lib/libvorbisenc.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libvorbisenc.so.2 Reading symbols from /usr/lib/gio/modules/libgvfsdbus.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gio/modules/libgvfsdbus.so Reading symbols from /usr/lib/libgvfscommon.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgvfscommon.so.0 Reading symbols from /lib/libudev.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/libudev.so.0 Reading symbols from /usr/lib/gio/modules/libgioremote-volume-monitor.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gio/modules/libgioremote-volume-monitor.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libkeyboard.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libkeyboard.so Reading symbols from /usr/lib/libXxf86misc.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libXxf86misc.so.1 Reading symbols from /usr/lib/libgnomekbdui.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnomekbdui.so.4 Reading symbols from /usr/lib/libgnomekbd.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnomekbd.so.4 Reading symbols from /usr/lib/libxklavier.so.16...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxklavier.so.16 Reading symbols from /usr/lib/libxkbfile.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libxkbfile.so.1 Reading symbols from /usr/lib/gnome-settings-daemon-2.0/liba11y-keyboard.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/liba11y-keyboard.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libmouse.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libmouse.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libkeybindings.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libkeybindings.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libbackground.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libbackground.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libmedia-keys.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libmedia-keys.so Reading symbols from /usr/lib/libpulse-mainloop-glib.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpulse-mainloop-glib.so.0 Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libclipboard.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libclipboard.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libtyping-break.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libtyping-break.so Reading symbols from /usr/lib/gnome-settings-daemon-2.0/libhousekeeping.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gnome-settings-daemon-2.0/libhousekeeping.so Reading symbols from /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so Reading symbols from /usr/lib/gtk-2.0/modules/libgail.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gtk-2.0/modules/libgail.so Reading symbols from /usr/lib/libgailutil.so.18...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgailutil.so.18 Reading symbols from /usr/lib/gtk-2.0/modules/libatk-bridge.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gtk-2.0/modules/libatk-bridge.so Reading symbols from /usr/lib/libspi.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libspi.so.0 Reading symbols from /usr/lib/libbonobo-2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libbonobo-2.so.0 Reading symbols from /usr/lib/libbonobo-activation.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libbonobo-activation.so.4 Reading symbols from /usr/lib/libORBitCosNaming-2.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libORBitCosNaming-2.so.0 Reading symbols from /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so Reading symbols from /usr/lib/libjpeg.so.62...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libjpeg.so.62 0x00640422 in __kernel_vsyscall () (gdb) continue Continuing. ^C Program received signal SIGINT, Interrupt. 0x00640422 in __kernel_vsyscall () (gdb) thread apply all bt
+ Trace 221979
Thread 1 (Thread 0xb784a720 (LWP 1261))
(In reply to comment #15) > Hi. I'm affected by this too. Stock ubuntu 10.04 with notify-osd and compiz. A > symptom I have noticed is that *both* notify-osd and the "normal" gnome volume > OSD show up in this case (but when rhythmbox is not focused and no hang > happens, only the notify-osd one appears). That's odd - I thought Ubuntu patched out the volume OSD. > Here is the requested trace, I hope I did it properly. Let me know if it helps. I could have done without all the 'loading symbols for ..' lines, but otherwise that's at least enough to identify where it's blocking. Thanks. I'm going to try to reproduce this again now that I know a bit more about it, but in case that doesn't work, output from "strace -t -p `pidof gnome-settings-daemon`" would probably help too, just to make sure it's actually stuck there.
Created attachment 161424 [details] strace log Here is the output of the requested strace. I launched the command right after triggering the hang (note that it hangs not only rhythmbox, but also the gnome terminal and pretty much everything that uses g-s-d it seems).
That looks like you straced a new g-s-d rather than the existing one. It would be better to start the strace command before the hang occurs.
Created attachment 161546 [details] strace log New strace, started before triggering the hang and stopped right after it stopped.
Here's the relevant portion: 10:01:00 writev(7, [{"l\1\0\1\260\0\0\0&\0\0\0\233\0\0\0\1\1o\0\36\0\0\0/org/fre"..., 176}, {"\25\0\0\0gnome-settings-daemon\0\0\0\0\0\0\0"..., 176}], 2) = 352 10:01:00 gettimeofday({1274364060, 363013}, NULL) = 0 10:01:00 poll([{fd=7, events=POLLIN}], 1, 25000) = 0 (Timeout) 10:01:25 gettimeofday({1274364085, 376816}, NULL) = 0 Something doesn't quite add up here. The stack trace suggests it's waiting for a reply from the x server, but fd 7 here appears to be the connection to dbus.
If possible, I think we need another stack trace, preferably with debug symbols for gnome-settings-daemon and gtk at least. Output from strace with the additional argument '-s 200' might also help.
Could be that problem: https://bugs.freedesktop.org/show_bug.cgi?id=27811 which was causing problems in evolution-data-server, bluetoothd, and some other parts of the system. Would be worth testing. Or could be a sync return done in the media-keys plugin.
Urgh. As per comment #21, I tried to get a new gdb trace today after installing the gtk dbg packages (there are no dbg packages for gnome settings daemon in ubuntu, it seems), and I couldn't cause it to produce a traceback, even though the symptoms are still the same (rhythmbox + gnome-terminal "freezing", and the gnome volume OSD appearing at the same time as the notify-OSD one). The last part of the symptoms (two notifications instead of one) leaves me wondering if it's the same problem.
The g-s-d stack trace probably isn't necessary if you can provide the strace output I asked for in comment 22, or some of the information I'm about to ask for now.. Looking back at the dbus-monitor output in comment 11, I see this pair of messages: mc 1272169748 781930 5207 :1.12 /org/freedesktop/Notifications org.freedesktop.Notifications Notify ... mr 1272169773 816510 10354 5207 :1.12 which are before/after the GrabMediaKeys request. This suggests that notify-osd might be blocking on something. strace for that would probably help, as would more 'dbus-monitor --session --profile' output. There's something weird about the ordering of the messages there. If I add any more synchronous DBus calls in the future, would someone please shoot me?
Created attachment 164749 [details] strace -s 200 As requested in comment #21
Created attachment 164750 [details] dbus-monitor --session --profile As requested in comment #24
OK, that seems to confirm that g-s-d is blocking on notify-osd. At this point I think you should file a bug against notify-osd, preferably with a stack trace from it and the dbus-monitor output above. Another problem here is that libnotify uses synchronous dbus calls, but I'm guessing the solution to that will be a gdbus based notification client in gtk+3 rather than a change to libnotify.
Yes, I'm back :) I tested removing notify-osd today and installing notification-daemon in its place, so that only the standard gnome volume OSD is used... and rhythmbox is still affected (it even crashed once, but I couldn't reproduce it all the time). So I'm not certain notify-osd is always the culprit, and I'm still wondeing why this doesn't happen with apps other than Rhythmbox (ie: "it works in totem!")...
What version of rhythmbox are you using?
0.12.8-0ubuntu7
The rhythmbox portion of this bug was fixed in 0.13.0. Anything that remains is in g-s-d or something else that it's talking to.
I installed 0.13.0 today and indeed, I can confirm this problem as solved. It just wasn't made clear enough so I thought the issue was still pending (FIXED instead of NOTGNOME helps :) Thanks for your patience and all the fixes!