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
Created attachment 103420 [details] liboil-backtrace.txt
Please re-emerge liboil with CFLAGS of "-O2 -g -pipe" only and see if it still causes the problem.
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]
After turning of the SSE2 checks things worked fine.
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.
Doesn't help at all. IMHO, it seems to be that the SSE2 stuff in liboil is faulty.
(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).
Created attachment 103431 [details, diff] liboil-sse2-revert.diff - reverts the SSE2 check to the one present in 0.3.8
/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.
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
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?
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.
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).
(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).
*** Bug 157801 has been marked as a duplicate of this bug. ***
*** Bug 157745 has been marked as a duplicate of this bug. ***
Thanks, fixed in 0.3.10-r1