vlc-plugin-notify freezes when asked to play something

Bug #970447 reported by Reinis Zumbergs
32
This bug affects 5 people
Affects Status Importance Assigned to Milestone
VLC media player
Fix Released
Unknown
vlc (Debian)
Fix Released
Unknown
vlc (Ubuntu)
Fix Released
High
Unassigned
Precise
Fix Released
Undecided
Unassigned

Bug Description

1) Xubuntu Precise amd64 upgraded from Xubuntu 11.10
2)vlc: Installed: 2.0.1-3
3) vlc would play the selected file
4) vlc hangs/freezes indefinitely, then Ijust kill it

[Test Case]
1) Install vlc-plugin-notify
2) Enable notify (~/.config/vlc/vlcrc should contain control=notify)
3) Launch vlc with an file.

Expected result: Playback of the file.
Result due to this bug: crash.

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: vlc 2.0.1-3
ProcVersionSignature: Ubuntu 3.2.0-21.34-generic 3.2.13
Uname: Linux 3.2.0-21-generic x86_64
ApportVersion: 2.0-0ubuntu2
Architecture: amd64
Date: Sun Apr 1 01:41:20 2012
InstallationMedia: Xubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012)
SourcePackage: vlc
UpgradeStatus: Upgraded to precise on 2012-03-29 (2 days ago)

CVE References

Revision history for this message
Reinis Zumbergs (reinis-zumbergs) wrote :
Revision history for this message
Reinis Zumbergs (reinis-zumbergs) wrote :

BTW I think it's fixed in 2.1. I had a PPA before upgrade and I remember that then also vlc versions 2.0 <= x < 2.1 behaved the same way. With this I hope 2.1 versio will be included in Xubuntu 12.04 final release.

Revision history for this message
Rémi Denis-Courmont (rdenis) wrote :

Works fine here (Kubuntu). Without a stack trace, I cannot investigate the problem sorry.

Changed in vlc (Ubuntu):
status: New → Incomplete
Revision history for this message
Miguel (molon) wrote :

I have the same freezing problem with vlc after upgrading yesterday fromo oneiric to precise. I'm ataching a stack trace here. I hope it is useful. If a fix is found I would prefer that to subscribing to the daily-built ppa.

Thanks!

Miguel (molon)
Changed in vlc (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
topaz (top4z) wrote :

For my part I downgraded *vlc* to oneiiric versions, and it works like a charm. Was too boring to use mplayer in command line.
cheers
Topaz

Revision history for this message
Benjamin Drung (bdrung) wrote :

Can you attach ~/.config/vlc/vlcrc to the bug report?

Revision history for this message
Rémi Denis-Courmont (rdenis) wrote :

I asked for a stack trace, not a syscall trace. We the VLC developers are unable to reproduce the problem, and we'll assume it's an Ubuntu problem until we get a proper stack trace.

Changed in vlc (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Felix Wohlfrom (felix-wohlfrom) wrote :

I also have the problem, that vlc freezes on file opening.
The only backtrace I could create is following:
#0 __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
#1 0x00007ffff76cb065 in _L_lock_858 () from /lib/x86_64-linux-gnu/libpthread.so.0
#2 0x00007ffff76caeba in __pthread_mutex_lock (mutex=0x82c0e8) at pthread_mutex_lock.c:61
#3 0x00007ffff79084fa in playlist_Deactivate (p_playlist=0x82bf98) at playlist/thread.c:77
#4 0x00007ffff78f8042 in libvlc_InternalCleanup (p_libvlc=0x605108) at libvlc.c:744
#5 0x00007ffff7bc768e in libvlc_release (p_instance=0x605010) at core.c:107
#6 0x00000000004012e5 in main (i_argc=<optimized out>, ppsz_argv=<optimized out>) at vlc.c:261

I don't know if it's enough, if you could tell me how to produce better output please let me know (I didn't use gdb for multithreading debugging yet).

The line in vlc debugging output on which it seems to hang is:
[0x7fffd8000b78] main input debug: Creating an input for 'filename'.
It also hangs if the file that should be played doesn't even exist.

Revision history for this message
Rémi Denis-Courmont (rdenis) wrote :

We need a full threaded stack trace ('thread apply all bt' in gdb).

Revision history for this message
Felix Wohlfrom (felix-wohlfrom) wrote :
Download full text (6.9 KiB)

Hope this helps:

Thread 8 (Thread 0x7fffd4ae8700 (LWP 3965)):
#0 0x00007ffff71e6b03 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1 0x00007ffff0a55ff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff0a5645a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffd4aed98b in ?? () from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff0a779a5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff76c8e9a in start_thread (arg=0x7fffd4ae8700) at pthread_create.c:308
#6 0x00007ffff71f24bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fffe740c700 (LWP 3964)):
#0 __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
#1 0x00007ffff76cb065 in _L_lock_858 () from /lib/x86_64-linux-gnu/libpthread.so.0
#2 0x00007ffff76caeba in __pthread_mutex_lock (mutex=0x82c098) at pthread_mutex_lock.c:61
#3 0x00007ffff7909826 in playlist_CurrentInput (p_playlist=0x82bf48) at playlist/engine.c:314
#4 0x00007ffff293db5a in MainInputManager::customEvent (this=0x7fffd0264d60, event=<optimized out>) at input_manager.cpp:1066
#5 0x00007ffff10af4ac in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6 0x00007ffff15b8894 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#7 0x00007ffff15bd713 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#8 0x00007ffff1095e9c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9 0x00007ffff1099c6a in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007ffff10c4f93 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#11 0x00007ffff0a55c9a in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007ffff0a56060 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007ffff0a56124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007ffff10c53bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#15 0x00007ffff1660d5e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#16 0x00007ffff1094c82 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007ffff1094ed7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007ffff1099f67 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007ffff291f04e in Thread (obj=0x1296088) at qt4.cpp:529
#20 0x00007ffff76c8e9a in start_thread (arg=0x7fffe740c700) at pthread_create.c:308
#21 0x00007ffff71f24bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#22 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fffed0d8700 (LWP 3961)):
#0 0x00007ffff71e6b03 in __GI___poll (fds=<optimized ou...

Read more...

Revision history for this message
Rémi Denis-Courmont (rdenis) wrote :

Thanks. Can you please uninstall 'vlc-plugin-notify' and verify that it fixes the problem?

Revision history for this message
Felix Wohlfrom (felix-wohlfrom) wrote :

tested and verified.
after uninstalling the package everything works fine.

Changed in vlc (Ubuntu):
status: Incomplete → Confirmed
summary: - vlc freezes when asked to play something
+ vlc-plugin-notify freezes when asked to play something
Changed in vlc (Debian):
status: Unknown → New
Changed in vlc (Debian):
status: New → Confirmed
Revision history for this message
Miguel (molon) wrote :

Sorry for my confusion between syscall and stack traces.
I confirm than uninstalling vlc-plugin-notify solves the problem in Ubuntu 12.04
Thanks!

Changed in vlc:
milestone: none → 2.0.4
Benjamin Drung (bdrung)
Changed in vlc (Ubuntu):
importance: Undecided → High
status: Confirmed → Fix Committed
Benjamin Drung (bdrung)
Changed in vlc (Debian):
status: Confirmed → Unknown
Changed in vlc (Debian):
status: Unknown → Confirmed
Changed in vlc (Debian):
status: Confirmed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package vlc - 2.0.3-3

---------------
vlc (2.0.3-3) unstable; urgency=low

  * debian/vlc.postinst: Fix directory to symlink upgrade in postinst.
    Thanks to David Prévot <email address hidden> (Closes: #687657)
  * debian/vlc.preinst: Remove insufficient fix to #613121 (similar issue).
    Thanks to David Prévot for the patch.
  * Cherry-pick fix for VLC hang caused by the notify plugin. (Closes: #662628,
    LP: #970447)
  * Drop alternative dependency on transitional ttf-freefont.

 -- Benjamin Drung <email address hidden> Thu, 04 Oct 2012 20:59:21 +0200

Changed in vlc (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Reinis Zumbergs (reinis-zumbergs) wrote :

I confirm it's fixed in 12.10

Benjamin Drung (bdrung)
description: updated
Changed in vlc:
status: Unknown → Fix Released
Revision history for this message
Benjamin Drung (bdrung) wrote :

Here's the debdiff for precise-proposed for the debian/ directory.

Revision history for this message
Adam Conrad (adconrad) wrote : Please test proposed package

Hello Reinis, or anyone else affected,

Accepted vlc into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/vlc/2.0.4-0ubuntu0.12.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in vlc (Ubuntu Precise):
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Reinis Zumbergs (reinis-zumbergs) wrote :

Hi, I have already moved to 12.10. It seems to be fixed here.

Revision history for this message
Felix Wohlfrom (felix-wohlfrom) wrote :

also here no more problems.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package vlc - 2.0.5-0ubuntu0.12.04.1

---------------
vlc (2.0.5-0ubuntu0.12.04.1) precise-security; urgency=low

  * New bug-fixing upstream release.
    - Fix hang caused by the notify plugin. (Closes: #662628, LP: #970447)
    - Fix crashes (LP: #947156, #958462, #960020, #979490, #1033682)
    - Correct default encoding for Hebrew subtitles (LP: #1051552)
  * SECURITY UPDATE: denial of service via crafted PNG file (LP: #1084054)
    - CVE-2012-5470
  * SECURITY UPDATE: Buffer overflows in freetype renderer and HTML subtitle
    parser can cause a denial of service (process termination) and possibly
    execute arbitrary code.
    - VideoLAN-SA-1301
 -- Benjamin Drung <email address hidden> Sat, 05 Jan 2013 14:47:33 +0100

Changed in vlc (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.