Bug#453076: vlc: dies with "corrupted double-linked list" when scanning SAP sources
Vincent McIntyre
Vince.McIntyre at atnf.csiro.au
Tue Nov 27 07:26:11 UTC 2007
Package: vlc
Version: 0.8.6-svn20061012.debian-5etch1
Severity: normal
*** Please type your report below this line ***
This system is running pure etch, with no backports.
$ strace -o /tmp/vlc.strace vlc
View->Playlist
Manage->Services Discovery ->Manage Playlists->SAP Announcements
The application updates the count of sources in the lower left of the
Playlist window, and icons start appearing. But then the application
crashes, with the on-screen error message
** (.:22406): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
*** glibc detected *** free(): invalid next size (normal): 0x08373888 ***
in the strace, I see this:
$ tail /tmp/vlc.strace
gettimeofday({1196138552, 947365}, NULL) = 0
poll([{fd=4, events=POLLIN, revents=POLLIN}, {fd=6, events=POLLIN}], 2, 100) = 1
read(4, "A", 1) = 1
gettimeofday({1196138553, 13120}, NULL) = 0
open("/dev/tty", O_RDWR|O_NONBLOCK|O_NOCTTY) = 23
writev(23, [{"*** glibc detected *** ", 23}, {"corrupted double-linked list", 28}, {": 0x", 4}, {"0839cbf8", 8}, {" ***\n", 5}], 5) = 68
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
tgkill(21006, 21006, SIGABRT) = 0
--- SIGABRT (Aborted) @ 0 (0) ---
+++ killed by SIGABRT +++
I tried the G_SLICE trick mentioned in one of the other bugs
It appears this allowed the list compilation to get farther but it dies
in a similar fashion.
$ G_SLICE=always-malloc strace -o /tmp/vlc.strace.2 vlc
** (.:22518): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
** (.:22518): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
*** glibc detected *** free(): invalid next size (fast): 0x08364548 ***
The strace is slightly different though:
$ tail /tmp/vlc.strace.2
gettimeofday({1196147051, 460409}, NULL) = 0
poll([{fd=4, events=POLLIN, revents=POLLIN}, {fd=6, events=POLLIN}], 2, 99) = 1
read(4, "A", 1) = 1
gettimeofday({1196147051, 533148}, NULL) = 0
open("/dev/tty", O_RDWR|O_NONBLOCK|O_NOCTTY) = 23
writev(23, [{"*** glibc detected *** ", 23}, {"free(): invalid next size (fast)", 32}, {": 0x", 4}, {"08364548", 8}, {" ***\n", 5}], 5) = 72
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
tgkill(22518, 22518, SIGABRT) = 0
--- SIGABRT (Aborted) @ 0 (0) ---
+++ killed by SIGABRT +++
One more attempt with -v yeilded another wrinkle
$ strace -o /tmp/vlc.strace.3 vlc -v
VLC media player 0.8.6a Janus
** (.:22661): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
** (.:22661): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
*** glibc detected *** free(): invalid next size (normal): 0x08365758 ***
The messages about "gtk_pizza" are sent to the tty well before the failure.
$ tail /tmp/vlc.strace.3
write(6, "8\30\5\0\207\1 \4\4\0\10\0\0\0\0\0\0\0\0\0008\0\4\0\210"..., 68) = 68
ioctl(6, FIONREAD, [0]) = 0
gettimeofday({1196147728, 621895}, NULL) = 0
poll([{fd=4, events=POLLIN}, {fd=6, events=POLLIN}], 2, 0) = 0
open("/dev/tty", O_RDWR|O_NONBLOCK|O_NOCTTY) = 23
writev(23, [{"*** glibc detected *** ", 23}, {"free(): invalid next size (norma"..., 34}, {": 0x", 4}, {"08365758", 8}, {" ***\n", 5}], 5) = 74
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
tgkill(22661, 22661, SIGABRT) = 0
--- SIGABRT (Aborted) @ 0 (0) ---
+++ killed by SIGABRT +++
On the second attempt
$ strace -o /tmp/vlc.strace.4 vlc -v
VLC media player 0.8.6a Janus
** (.:22675): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
** (.:22675): CRITICAL **: gtk_pizza_set_size: assertion `pizza != NULL' failed
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
[00000288] sap private warning: too short SAP packet
signal 2 received, terminating vlc - do it again in case it gets stuck
user insisted too much, dying badly
The application wedged itself and required multiple ^c's to kill it.
$ tail -20 /tmp/vlc.strace.4
time(NULL) = 1196147792
write(2, "signal 2 received, terminating v"..., 71) = 71
sigreturn() = ? (mask now [])
futex(0xb7d374c0, FUTEX_WAIT, 2, NULL) = -1 EINTR (Interrupted system call)
--- SIGINT (Interrupt) @ 0 (0) ---
time(NULL) = 1196147794
sigreturn() = ? (mask now [])
futex(0xb7d374c0, FUTEX_WAIT, 2, NULL) = -1 EINTR (Interrupted system call)
--- SIGINT (Interrupt) @ 0 (0) ---
time(NULL) = 1196147798
rt_sigaction(SIGINT, {SIG_DFL}, {0x8048950, [INT], SA_RESTART}, 8) = 0
rt_sigaction(SIGHUP, {SIG_DFL}, {0x8048950, [HUP], SA_RESTART}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {0x8048950, [QUIT], SA_RESTART}, 8) = 0
rt_sigaction(SIGALRM, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGPIPE, {SIG_DFL}, {SIG_IGN}, 8) = 0
write(2, "user insisted too much, dying ba"..., 36) = 36
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
tgkill(22675, 22675, SIGABRT) = 0
--- SIGABRT (Aborted) @ 0 (0) ---
+++ killed by SIGABRT +++
This might be related to bug 444300, I'm not sure.
I have kept the straces and xorg.conf, let me know if you need to see them.
Cheers
Vince
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-4-686
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Versions of packages vlc depends on:
ii libaa1 1.4p5-30 ascii art library
ii libatk1. 1.12.4-3 The ATK accessibility toolkit
ii libc6 2.3.6.ds1-13etch2 GNU C Library: Shared libraries
ii libcaca0 0.99.beta11.debian-2 colour ASCII art library
ii libcairo 1.2.4-4 The Cairo 2D vector graphics libra
ii libcdio6 0.76-1 library to read and control CD-ROM
ii libcucul 0.99.beta11.debian-2 low-level Unicode character drawin
ii libdbus- 1.0.2-1 simple interprocess messaging syst
ii libdbus- 0.71-3 simple interprocess messaging syst
ii libfontc 2.4.2-1.2 generic font configuration library
ii libfreet 2.2.1-5+etch1 FreeType 2 font engine, shared lib
ii libfribi 0.10.7-4 Free Implementation of the Unicode
ii libgcc1 1:4.1.1-21 GCC support library
ii libgl1-m 6.5.1-0.6 A free implementation of the OpenG
ii libglib2 2.12.4-2 The GLib library of C routines
ii libglu1- 6.5.1-0.6 The OpenGL utility library (GLU)
ii libgtk2. 2.8.20-7 The GTK+ graphical user interface
ii libice6 1:1.0.1-2 X11 Inter-Client Exchange library
ii libiso96 0.76-1 library to work with ISO9660 files
ii libjpeg6 6b-13 The Independent JPEG Group's JPEG
ii libnotif 0.4.3-1 sends desktop notifications to a n
ii libpango 1.14.8-5 Layout and rendering of internatio
ii libpng12 1.2.15~beta5-1 PNG library - runtime
ii libsdl-i 1.2.5-2+b1 image loading library for Simple D
ii libsdl1. 1.2.11-8 Simple DirectMedia Layer
ii libsm6 1:1.0.1-3 X11 Session Management library
ii libstdc+ 4.1.1-21 The GNU Standard C++ Library v3
ii libtar 1.2.11-4 C library for manipulating tar arc
ii libtiff4 3.8.2-7 Tag Image File Format (TIFF) libra
ii libvcdin 0.7.23-3 library to extract information fro
ii libvlc0 0.8.6-svn20061012.debian-5etch1 multimedia player and streamer lib
ii libwxbas 2.6.3.2.1.5 wxBase library (runtime) - non-GUI
ii libwxgtk 2.6.3.2.1.5 wxWidgets Cross-platform C++ GUI t
ii libx11-6 2:1.0.3-7 X11 client-side library
ii libxcurs 1.1.7-4 X cursor management library
ii libxext6 1:1.0.1-2 X11 miscellaneous extension librar
ii libxfixe 1:4.0.1-5 X11 miscellaneous 'fixes' extensio
ii libxi6 1:1.0.1-4 X11 Input extension library
ii libxiner 1:1.0.1-4.1 X11 Xinerama extension library
ii libxosd2 2.2.14-1.3 X On-Screen Display library - runt
ii libxrand 2:1.1.0.2-5 X11 RandR extension library
ii libxrend 1:0.9.1-3 X Rendering Extension client libra
ii libxv1 1:1.0.2-1 X11 Video extension library
ii libxxf86 1:1.0.1-2 X11 XFree86 video mode extension l
ii ttf-deja 2.15-1 Vera font family derivate with add
ii vlc-nox 0.8.6-svn20061012.debian-5etch1 multimedia player and streamer (wi
ii zlib1g 1:1.2.3-13 compression library - runtime
Versions of packages vlc recommends:
pn videolan-doc <none> (no description available)
-- no debconf information
More information about the pkg-multimedia-maintainers
mailing list