Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 157281 - dev-libs/liboil-0.3.10 breaks all apps linked to gstreamer
Summary: dev-libs/liboil-0.3.10 breaks all apps linked to gstreamer
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High major
Assignee: Zaheer Abbas Merali (RETIRED)
URL:
Whiteboard:
Keywords:
: 157745 157801 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-12-05 19:30 UTC by Priit Laes (IRC: plaes)
Modified: 2006-12-11 02:50 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
liboil-backtrace.txt (liboil-backtrace.txt,9.78 KB, text/plain)
2006-12-05 19:32 UTC, Priit Laes (IRC: plaes)
Details
liboil-0.3.10.ebuild.diff (liboil-0.3.10.ebuild.diff,800 bytes, patch)
2006-12-06 02:00 UTC, Jakub Moc (RETIRED)
Details | Diff
liboil-sse2-revert.diff (liboil-sse2-revert.diff,812 bytes, patch)
2006-12-06 02:20 UTC, Jakub Moc (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Priit Laes (IRC: plaes) 2006-12-05 19:30:43 UTC
After upgrade to liboil-0.3.10, all the gstreamer related apps seem to be b0rked.

amd@sl007 ~ $ emerge --info
Portage 2.1.2_rc2-r5 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.5-r0, 2.6.17-gentoo-r8 i686)
=================================================================
System uname: 2.6.17-gentoo-r8 i686 Intel(R) Pentium(R) M processor 1.60GHz
Gentoo Base System version 1.12.6
Last Sync: Tue, 05 Dec 2006 21:30:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -march=pentium-m -g -ggdb -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-Os -march=pentium-m -g -ggdb -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms splitdebug strict"
GENTOO_MIRRORS="ftp://trumpetti.atm.tut.fi/gentoo/"
LANG="et_EE.UTF-8"
LDFLAGS="-Wl,--as-needed"
LINGUAS="et"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/overlay/amd /home/amd/code/gentoo/non-gnome /home/amd/code/gentoo/gnome /home/amd/code/gentoo/gentopia /usr/portage/local/layman/gnome-experimental /usr/portage/local/layman/sunrise"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X a52 aac acpi aiglx aio alsa apache2 avahi beagle bitmap-fonts bluetooth bogofilter branding bzip2 cairo cddb cdr cli cracklib crypt cups curl daap dbus devhelp dga djbfft dlloader dmi dri dvd dvdread eds elibc_glibc emboss encode exif fastcgi firefox flac foomaticdb galago gdbm gif glib glitz glut gnome gnutls gstreamer gtk gtk2 hal iconv idn imlib input_devices_evdev input_devices_keyboard input_devices_mouse input_devices_synaptics ipv6 isdnlog jpeg kdrive kernel_linux keyring lcms libg++ libnotify libsexy libwww linguas_et logrotate mad mikmod mmap mmx mng mp3 mpeg msn nautilus ncurses nls nptl nptlonly nsplugin ogg ole opengl pam pcmcia pcre pdf png pppd quicktime readline real reflection rtc ruby sdl session spell spl sse sse2 ssl svg tcpd theora tiff truetype truetype-fonts type1-fonts udev unicode usb userland_GNU vhosts video_cards_radeon vorbis win32codecs xcb xml xorg xv xvid zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Priit Laes (IRC: plaes) 2006-12-05 19:32:26 UTC
Created attachment 103420 [details]
liboil-backtrace.txt
Comment 2 Zaheer Abbas Merali (RETIRED) gentoo-dev 2006-12-06 01:15:51 UTC
Please re-emerge liboil with CFLAGS of "-O2 -g -pipe" only and see if it still causes the problem.
Comment 3 Priit Laes (IRC: plaes) 2006-12-06 01:39:49 UTC
Yes it does... Although I noticed one thing during configure:
in 0.3.8-r1:
[snip]
checking to see if compiler understands -Wall... yes
checking if compiler supports MMX intrinsics... yes
checking if compiler supports SSE intrinsics... yes
checking if compiler supports SSE2 intrinsics... no
checking if compiler supports SSE3 intrinsics... yes
checking if compiler supports 3DNOW intrinsics... yes
checking if compiler supports 3DNOWEXT intrinsics... yes
checking if compiler supports ALTIVEC intrinsics... no
[/snip]

but in 0.3.10
[snip]
checking to see if compiler understands -Wall... yes
checking if compiler supports MMX intrinsics... yes
checking if compiler supports SSE intrinsics... yes
checking if compiler supports SSE2 intrinsics... yes
checking if compiler supports SSE3 intrinsics... yes
checking if compiler supports 3DNOW intrinsics... yes
checking if compiler supports 3DNOWEXT intrinsics... yes
checking if compiler supports ALTIVEC intrinsics... no
[/snip]
Comment 4 Priit Laes (IRC: plaes) 2006-12-06 01:52:50 UTC
After turning of the SSE2 checks things worked fine.
Comment 5 Jakub Moc (RETIRED) gentoo-dev 2006-12-06 02:00:43 UTC
Created attachment 103430 [details, diff]
liboil-0.3.10.ebuild.diff

OK, can you test this patch with your _original_ flags to see if it works? If it doesn't, then -march is killing this thing and then it's just plain _horribly_ broken.
Comment 6 Priit Laes (IRC: plaes) 2006-12-06 02:14:29 UTC
Doesn't help at all.

IMHO, it seems to be that the SSE2 stuff in liboil is faulty.
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2006-12-06 02:18:59 UTC
(In reply to comment #6)
> Doesn't help at all.
> 
> IMHO, it seems to be that the SSE2 stuff in liboil is faulty.

Sure it doesn't, I posted the attachement before reading your post (got a bugzilla collision on comment).
 

Comment 8 Jakub Moc (RETIRED) gentoo-dev 2006-12-06 02:20:02 UTC
Created attachment 103431 [details, diff]
liboil-sse2-revert.diff

- reverts the SSE2 check to the one present in 0.3.8
Comment 9 Santiago Gala 2006-12-07 18:18:29 UTC
/me too Intel Core 2 Duo, amd64 arch

Also, ebuild with FEATURES=test gives:

make  check-TESTS
make[4]: Entering directory `/var/tmp/portage/liboil-0.3.10/work/liboil-0.3.10/testsuite'
/bin/sh: line 4: 27359 Segmentation fault      ${dir}$tst
FAIL: align
/bin/sh: line 4: 27377 Segmentation fault      ${dir}$tst
FAIL: moo
/bin/sh: line 4: 27395 Segmentation fault      ${dir}$tst
FAIL: introspect
/bin/sh: line 4: 27413 Segmentation fault      ${dir}$tst
FAIL: proto1
/bin/sh: line 4: 27431 Segmentation fault      ${dir}$tst
FAIL: proto2
/bin/sh: line 4: 27449 Segmentation fault      ${dir}$tst
FAIL: test1
  d1_1xn
  s1_1xn
  i1_1xn
  d1_1xn
  d2_1xn
  ds1
  ss1
  is1
  ds1
  ds2
  d1_1x1
  d1_1x2
  d1_1x4
  d1_1xn
  d1_1xn
  d1_4xn
  d1_nxm
  d1_8x8
  d1_1xnp2
PASS: proto3
/bin/sh: line 4: 27483 Segmentation fault      ${dir}$tst
FAIL: proto4
/bin/sh: line 4: 27501 Segmentation fault      ${dir}$tst
FAIL: stride
/bin/sh: line 4: 27519 Segmentation fault      ${dir}$tst
FAIL: dso_check
/bin/sh: line 4: 27537 Segmentation fault      ${dir}$tst
FAIL: abs
/bin/sh: line 4: 27555 Segmentation fault      ${dir}$tst
FAIL: md5
/bin/sh: line 4: 27573 Segmentation fault      ${dir}$tst
FAIL: md5_profile
/bin/sh: line 4: 27591 Segmentation fault      ${dir}$tst
FAIL: trans
/bin/sh: line 4: 27609 Segmentation fault      ${dir}$tst
FAIL: copy
/bin/sh: line 4: 27627 Segmentation fault      ${dir}$tst
FAIL: zigzag
/bin/sh: line 4: 27645 Segmentation fault      ${dir}$tst
FAIL: mmx_engine
/bin/sh: line 4: 27663 Segmentation fault      ${dir}$tst
FAIL: stack_align
=====================
17 of 18 tests failed
=====================
make[4]: *** [check-TESTS] Error 1
make[4]: Leaving directory `/var/tmp/portage/liboil-0.3.10/work/liboil-0.3.10/testsuite'
make[3]: *** [check-am] Error 2
make[3]: Leaving directory `/var/tmp/portage/liboil-0.3.10/work/liboil-0.3.10/testsuite'
make[2]: *** [check-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/liboil-0.3.10/work/liboil-0.3.10/testsuite'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/liboil-0.3.10/work/liboil-0.3.10'
make: *** [check] Error 2

!!! ERROR: dev-libs/liboil-0.3.10 failed.
Call stack:
  ebuild.sh, line 1546:   Called dyn_test
  ebuild.sh, line 986:   Called src_test
  ebuild.sh, line 616:   Called die

!!! Make check failed. See above for details.
!!! If you need support, post the topmost build error, and the call stack if relevant.
Comment 10 Santiago Gala 2006-12-07 18:48:20 UTC
More data points:

0.3.6-r1 seems to work, it is the one I use, but test fails 1 in 14 tests, stride, with segfault.
0.3.7 fails 16 out of 17 tests
the remaining ones behave like 0.3.10

Comment 11 Priit Laes (IRC: plaes) 2006-12-07 22:24:47 UTC
For me it wasn't as that bad :)

/bin/sh: line 4:  8980 Segmentation fault      ${dir}$tst
FAIL: stack_align
====================
1 of 18 tests failed
====================

Devs, could we see some action here? Like p-masking or removal of it from the portage?
Comment 12 Santiago Gala 2006-12-08 00:44:58 UTC
google finds this:
http://bugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=369315

looks like 0.3.10-1 fixes CPU detection in amd64 and several other
serious bugs

Re: previous comment, The problem is gst-plugins pulls it in, and unstable gnome (2.16.2) is wanting it, I think.
Comment 13 Santiago Gala 2006-12-08 03:22:15 UTC
more info: removing -ftree-vectorize from CFLAGS makes it pass tests.

Not sure how it can affect, since I didn't notice it was in the compile
lines, and it looks like the ebuild is removing it with emake CFLAGS="-O2 -g". Don't know if it could interfere with ./configure execution, though.



FYI, I'm using CFLAGS_amd64 for the flags.

So, with bare CFLAGS (-march=nocona -O2), liboil-0.3.10 runs and passes all tests here. With -O3 1 test (stack_align) fails. It looks like with -ftree-vectorize something very broken happens (but not during make).
Comment 14 Jakub Moc (RETIRED) gentoo-dev 2006-12-08 03:25:26 UTC
(In reply to comment #13)
> Not sure how it can affect, since I didn't notice it was in the compile
> lines, and it looks like the ebuild is removing it with emake CFLAGS="-O2 -g".

Well, that apparently doesn't work... Needs to filtered properly (see the ebuild diff attached, just might needs more flags nuked via ALLOWED_FLAGS).
Comment 15 Jakub Moc (RETIRED) gentoo-dev 2006-12-11 01:22:56 UTC
*** Bug 157801 has been marked as a duplicate of this bug. ***
Comment 16 Jakub Moc (RETIRED) gentoo-dev 2006-12-11 01:23:33 UTC
*** Bug 157745 has been marked as a duplicate of this bug. ***
Comment 17 Zaheer Abbas Merali (RETIRED) gentoo-dev 2006-12-11 02:50:20 UTC
Thanks, fixed in 0.3.10-r1