Bug 82622 - flac-1.1.2 causes xmms to generate *** glibc detected *** double free or corruption (out): 0x412dd500 ***
Bug#: 82622 Product:  Gentoo Linux Version: unspecified Platform: x86
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: eradicator@gentoo.org Reported By: david@ion.lu
Component: Applications
URL: 
Summary: flac-1.1.2 causes xmms to generate *** glibc detected *** double free or corruption (out): 0x412dd500 ***
Keywords:  
Status Whiteboard: 
Opened: 2005-02-19 15:01 0000
Description:   Opened: 2005-02-19 15:01 0000
Having emerged flac-1.1.2 into the new slot, I couldn't start xmms anymore.
Everytime I tried, I got that error:

*** glibc detected *** double free or corruption (out): 0x412dd500 ***
Aborted

and xmms wouldn't start.

After unmerging flac-1.1.2, xmms works again. I'm unsure about wether and how
this is related to those other glibc errors filed here recently.

Reproducible: Always
Steps to Reproduce:
1.emerge flac-1.1.2
2.start xmms
3.

Actual Results:  
error message:
*** glibc detected *** double free or corruption (out): 0x412dd500 ***
Aborted

xmms doesn't start


Portage 2.0.51-r15 (default-linux/x86/2004.2, gcc-3.4.3,
glibc-2.3.4.20050125-r0, 2.6.10-gentoo-r7 i686)
=================================================================
System uname: 2.6.10-gentoo-r7 i686 Intel(R) Pentium(R) M processor 1500MHz
Gentoo Base System version 1.6.9
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Feb 17 2005, 22:48:09)]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.8.5-r3, 1.9.4, 1.7.9-r1, 1.5, 1.4_p6, 1.6.3
sys-devel/binutils:  2.15.92.0.2-r2
sys-devel/libtool:   1.5.10-r4
virtual/os-headers:  2.4.22-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=i686 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=i686 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://gentoo.inode.at/ ftp://ftp.easynet.nl/mirror/gentoo/
http://gentoo.mirror.icd.hu/ http://ftp.easynet.nl/mirror/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa apache2 apm avi bitmap-fonts cdr crypt cups curl
divx4linux
dvd dvdr emboss encode f77 fam flac font-server foomaticdb fortran gd gif gimp
gimpprint gpm gtk gtk2 guile imagemagick imlib ipv6 java jpeg ldap libg++
libwww
mad matroska mikmod mmx motif mp3 mpeg msn mysql ncurses nls nvidia oggvorbis
opengl oscar pam pdflib perl php png ppds python quicktime readline samba
scanner sdl session slang snmp spell sse sse2 ssl svga tcltk tcpd tiff truetype
truetype-fonts type1-fonts usb xml xml2 xmms xv xvid zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS

------- Comment #1 From ra 2005-02-19 15:25:07 0000 -------
Yup, I'm seeing this also. Doing a:

emerge =media-libs/flac-1.1.1

which basically overwrites the new flac plugin; fixes the problem.

------- Comment #2 From Carsten Lohrke 2005-02-19 16:33:53 0000 -------
Please don't mark such minor issues as critical.

------- Comment #3 From David Raison 2005-02-19 16:38:32 0000 -------
sorry, I thought because it was breaking an application....
I apologize!

------- Comment #4 From Jory A. Pratt 2005-02-19 19:00:18 0000 -------
Flac 1.1.2 should be masked hard-masked at that until more testing is complete
... I just spent 5 hours correcting all the packages on my system that it
broke!!!

------- Comment #5 From Patrick Fourniols 2005-02-20 02:37:16 0000 -------
same here and after spending many hours on this, i only found this workaround:
echo "=media-libs/flac-1.1.2" >> /etc/portage/package.mask ;)

------- Comment #6 From David Morgan 2005-02-20 08:17:23 0000 -------
I get the same error (though the hex number is 0xb6fb93c0 - is that
significant?)

It even happens when xmms is emerged with USE="-flac", but downgrading to
flac-1.1.1 makes xmms work again


I have the same versions of gcc and glibc as the reporter, but I have USE="ntpl
nptlonly", where as he didn't, and my cflags are "-O2 -march=pentium4 -pipe",
in case that helps

------- Comment #7 From Guillaume Castagnino 2005-02-20 14:52:21 0000 -------
Same problem here with many applications.
New Flac 1.1.2 (libflac.so.7) API seems to break many programs

------- Comment #8 From Reinhold Birkenfeld 2005-02-21 08:49:04 0000 -------
*** Bug 82695 has been marked as a duplicate of this bug. ***

------- Comment #9 From Sven E. 2005-02-22 06:06:56 0000 -------
I ran into a similiar problem with file-roller.

IT might be this is related to nptl support, I am not sure though, could others maybe give opinions on this. If all have nptl enabled to, this might inidicated it could be related ....

------- Comment #10 From David Morgan 2005-02-22 09:03:37 0000 -------
The original bug reporter didn't have nptl in his use flags, (I do, however),
so unless he has changed them since last emerging glibc that suggests that the
problem isn't nptl related.

Of course, if you have USE="nptl -nptlonly" (-nptlonly is the default), then
running "LD_ASSUME_KERNEL=2.4.1 xmms" will use linuxthreads instead of nptl
(according to the glibc ebuild, anyway).

------- Comment #11 From Joël 2005-02-22 10:19:56 0000 -------
Same here, xmms didn't start, so I tried re-emerging many things like xmms
plugins, gtk+, etc, and it took several hours before I found that flac-1.1.2
was the culprit.

Well, next time I'll know to play with /usr/lib/xmms first :-)

IMHO flac-1.1.2 should probably stay hard masked until the apps get fixed to
support it..

------- Comment #12 From Oliver Schinagl 2005-02-22 12:04:18 0000 -------
indeed spend a full day figureing out Why xmms wouldn't start anymore. Even
tried unmerging all of xmms and all plugins. remerged with all use flags set to
-. However libflac obviously remained there!

After an unmerge of flac, all worked again. argh.

Oh well, the price for running ~x86 I suppose : )

------- Comment #13 From Vanquisher 2005-02-23 06:28:09 0000 -------
CFLAGS="-O0" emerge flac

This seems to fix it, allowing xmms to start, and i run ~x86 :)

enjoy ;)...

------- Comment #14 From Roel Brook 2005-02-23 08:03:24 0000 -------
Created an attachment (id=51952) [details]
strace log

Bug confirmed. Strace log attached. Not sure if this is usefull at all though

------- Comment #15 From Jory A. Pratt 2005-02-23 16:17:43 0000 -------
Vanquisher you seem to not have read that it is breaking more then just xmms I
have emailed upstream and waiting a responce as to why all of a sudden a new
release is breaking so many applications I hope to hear back by them before the
weekend.

------- Comment #16 From Roel Brook 2005-02-23 16:54:46 0000 -------
revdep-rebuild does indicate a lot of packages are broken because of
dependencies with lib(ogg)flac.*

here's what revdep-rebuild tells me: (I might not have all the packages broken
by this upgrade installed, so I don't think this is a complete list. It might
help to find dups for this bug though)

  broken /usr/lib/gtkhtml/libgnome-gtkhtml-editor-3.0.so (requires
libgal-2.0.so.6 libgal-a11y-2.0.so.6 libgal-2.0.so.6 libgal-a11y-2.0.so.6)
  broken /usr/lib/kde3/libk3bflacdecoder.so (requires libFLAC++.so.4
libFLAC.so.6)
  broken
/usr/lib/perl5/vendor_perl/5.8.6/i686-linux/auto/MusicBrainz/Tunepimp/tunepimp/tunepimp.so
(requires libFLAC.so.6)
  broken /usr/lib/xine/plugins/1.0.0/xineplug_flac.so (requires libFLAC.so.6)
  broken /usr/lib/libgtkhtml-3.0.so.4.0.0 (requires libgal-2.0.so.6
libgal-a11y-2.0.so.6)
  broken /usr/lib/libtunepimp.so.2.0.0 (requires libFLAC.so.6)
  broken /usr/lib/python2.3/site-packages/tunepimp/_tunepimp.so (requires
libFLAC.so.6)
  broken /usr/lib/gstreamer-0.8/libgstflac.so (requires libFLAC.so.6)
  broken /usr/bin/ogg123 (requires libOggFLAC.so.1)
  broken /usr/bin/oggenc (requires libOggFLAC.so.1)
  broken /usr/bin/tp_tagger (requires libFLAC.so.6 libFLAC.so.6)
  broken /usr/bin/trm (requires libFLAC.so.6 libFLAC.so.6)
  broken /usr/X11R6/lib/gtkhtml/libgnome-gtkhtml-editor-3.0.so (requires
libgal-2.0.so.6 libgal-a11y-2.0.so.6 libgal-2.0.so.6 libgal-a11y-2.0.so.6)
  broken /usr/X11R6/lib/kde3/libk3bflacdecoder.so (requires libFLAC++.so.4
libFLAC.so.6)
  broken
/usr/X11R6/lib/perl5/vendor_perl/5.8.6/i686-linux/auto/MusicBrainz/Tunepimp/tunepimp/tunepimp.so
(requires libFLAC.so.6)
  broken /usr/X11R6/lib/xine/plugins/1.0.0/xineplug_flac.so (requires
libFLAC.so.6)
  broken /usr/X11R6/lib/libgtkhtml-3.0.so.4.0.0 (requires libgal-2.0.so.6
libgal-a11y-2.0.so.6)
  broken /usr/X11R6/lib/libtunepimp.so.2.0.0 (requires libFLAC.so.6)
  broken /usr/X11R6/lib/python2.3/site-packages/tunepimp/_tunepimp.so (requires
libFLAC.so.6)
  broken /usr/X11R6/lib/gstreamer-0.8/libgstflac.so (requires libFLAC.so.6)
  broken /usr/X11R6/bin/ogg123 (requires libOggFLAC.so.1)
  broken /usr/X11R6/bin/oggenc (requires libOggFLAC.so.1)
  broken /usr/X11R6/bin/tp_tagger (requires libFLAC.so.6 libFLAC.so.6)
  broken /usr/X11R6/bin/trm (requires libFLAC.so.6 libFLAC.so.6)
  broken /usr/kde/3.3/lib/libakode_xiph_decoder.so (requires libOggFLAC.so.1)

With makes for these packages being broken:

emerge --oneshot --nodeps  =app-cdr/k3b-0.11.20
=gnome-extra/libgtkhtml-3.0.10-r1 =media-libs/xine-lib-1.0
=media-sound/vorbis-tools-1.0.1 =media-libs/tunepimp-0.3.0-r1
=kde-base/kdemultimedia-3.3.2 =media-plugins/gst-plugins-flac-0.8.7

Guess you can ignore libgtkhtml, that has been in there since my install.

------- Comment #17 From Dariusz Dwornikowski 2005-02-26 03:48:12 0000 -------
same problem ive got USE="nptl" but before upgrading flac xmms worked. 
i guess this is flac issue

------- Comment #18 From fbusse@gmx.de 2005-02-26 23:50:22 0000 -------
I've got the same problem, flac-1.1.2 breaks at least xmms.
Could someone please mask this flac-version, it's known to break stuff (and I'm not using ~x86).

------- Comment #19 From Rainer Koschnick 2005-02-27 13:19:20 0000 -------
Also there is a strange dependency here.  The ebuild creates those files:

-rwxr-xr-x  1 root root  84432 Feb 27 21:53 libOggFLAC.so.3.0.0*
-rwxr-xr-x  1 root root 257728 Feb 27 21:53 libFLAC.so.7.0.0*

BUT this is definately wrong:

arkay@gentoo /usr/lib $ ldd libOggFLAC.so.3.0.0
        libogg.so.0 => //usr/lib/libogg.so.0 (0x0000002a9566c000)
        libFLAC.so.6 => not found
        libc.so.6 => /lib/tls/libc.so.6 (0x0000002a95792000)
        /lib64/ld-linux-x86-64.so.2 (0x000000552aaaa000)

libFLAC.so.6???  That should be 7 since there is no 6.


------- Comment #20 From Rainer Koschnick 2005-02-27 13:27:08 0000 -------
Another thing is that I can play ping-pong with emerge -uvD world.  It would
install flac-1.1.1 one time, then if I invoke the same command again it would
install 1.1.2.  Do it again and you get 1.1.1.  What is going on here?

The same goes for sdl-perl-2.1.2-r1 and 1.20.3.   I don't know if this is
related.

------- Comment #21 From Guillaume Castagnino 2005-02-27 13:29:00 0000 -------
This issue of libFLAC.so.7 linked to libFLAC.so.6 is solved with a new emerge
of flac. Seems that the linking step breaks some sandbox. But unfortunatly,
correcting this problem doesn't solve the breaking of the flac API and ABI, so
many program continue not to work...

------- Comment #22 From Roel Brook 2005-02-28 15:18:58 0000 -------
might be offtopic, but I have that upgrade / downgrade cycle of sdl-perl fixed
locally. There was a bug about that somewhere on bugzilla, but I can't find it
any more. If anyone has the bug number, I'll attach the ebuilds.

Simply: SLOT them. In 1.xxx ebuild, change SLOT=0 to SLOT=1 and in the 2.xx
change it to SLOT=2

Both versions offer different functionality, therefor they should be slotted
(tuxracer doesn't work with sdl 2.xx, but a lot of other apps depend on it) 

------- Comment #23 From Jason Lynch 2005-03-14 22:27:31 0000 -------
Created an attachment (id=53495) [details]
Fixes at least one XMMS problem.

This patch was committed to the FLAC CVS a couple of weeks ago. After applying
the patch, I'm able to run XMMS normally.

I don't know if the patch name is very good; just what I used in my local
portage tree. 

------- Comment #24 From Derk W te Bokkel 2005-05-01 10:49:08 0000 -------
FYI

I got a similar problem due to a glibc version mis-match with flac-1.1.1. Recompiling flac-1.1.1 against the current version of glibc fixed the problem for me ..  (glibc-2.3.5) then xmms ran properly again. This may be due to glibc version mis-matches i.e. right after a glibc upgrade for some people .. flac-1.1.2 problems however may be a different matter.

------- Comment #25 From Jeremy Huddleston (RETIRED) 2005-05-03 13:24:35 0000 -------
in portage.  thanks.