Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 478230 - sys-freebsd/freebsd-lib? : media-video/vlc cause Segmentation fault: 11, enabled relro.
Summary: sys-freebsd/freebsd-lib? : media-video/vlc cause Segmentation fault: 11, enab...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: FreeBSD (show other bugs)
Hardware: All FreeBSD
: Normal normal
Assignee: Gentoo/BSD Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-26 12:41 UTC by Yuta SATOH
Modified: 2015-04-18 03:46 UTC (History)
1 user (show)

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


Attachments
sample patch for toolchain-binutils.eclass (478230.patch,588 bytes, patch)
2013-08-01 12:57 UTC, Yuta SATOH
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yuta SATOH 2013-07-26 12:41:04 UTC
The following packages terminated with a Segmentation fault: 11

media-video/vlc-2.0.7 (/usr/lib/vlc/vlc-cache-gen)
sys-freebsd/freebsd-cddl-9.2_beta1 (/usr/bin/ctfconvert)

FYI,
I've installed Gentoo/FreeBSD to a virtual machine (virtualbox, vmware, kvm).
I have not tested using the real machine.
Comment 1 Yuta SATOH 2013-07-26 12:41:19 UTC
issue occurs in install phase of media-video/vlc.

if test "x86_64-gentoo-freebsd9.0" = "x86_64-gentoo-freebsd9.0"; then \
        ./vlc-cache-gen ../modules ; \
else \
        echo "Cross-compilation: cache generation skipped!" ; \
fi
gmake[2]: *** [../modules/plugins.dat] Segmentation fault: 11 (core dumped)
gmake[2]: Leaving directory `/var/tmp/portage/media-video/vlc-2.0.7/work/vlc-2.0.7/bin'

I was passed install phase to force.
# CBUILD=x86_64-gentoo-freebsd9.2 emerge vlc

run vlc-cache-gen again...
# /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins/
Segmentation fault: 11 (core dumped)
# gdb /usr/lib/vlc/vlc-cache-gen
GNU gdb (Gentoo 7.6 p2) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-gentoo-freebsd9.0".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/lib/vlc/vlc-cache-gen...Reading symbols from /usr/lib/debug/usr/lib/vlc/vlc-cache-gen.debug...done.
done.
(gdb) run  -f /usr/lib/vlc/plugins/
Starting program: /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins/

Program received signal SIGSEGV, Segmentation fault.
xlocale_retain (val=0x801b6f620 <__xlocale_C_ctype>) at /var/tmp/portage/sys-freebsd/freebsd-lib-9.2_beta1/work/lib/libc/locale/xlocale_private.h:139
139     /var/tmp/portage/sys-freebsd/freebsd-lib-9.2_beta1/work/lib/libc/locale/xlocale_private.h: No such file or directory.
(gdb) bt
#0  xlocale_retain (val=0x801b6f620 <__xlocale_C_ctype>) at /var/tmp/portage/sys-freebsd/freebsd-lib-9.2_beta1/work/lib/libc/locale/xlocale_private.h:139
#1  0x000000080191c982 in dupcomponent (type=1, base=<optimized out>, new=0x801d13400) at /var/tmp/portage/sys-freebsd/freebsd-lib-9.2_beta1/work/lib/libc/locale/xlocale.c:233
#2  0x000000080191ca82 in newlocale (mask=2, mask@entry=4, locale=<optimized out>, locale@entry=0x800acf25c "C", base=<optimized out>, base@entry=0x0)
    at /var/tmp/portage/sys-freebsd/freebsd-lib-9.2_beta1/work/lib/libc/locale/xlocale.c:287
#3  0x0000000800ab97b9 in vlc_vaLog (obj=0x801c4f198, type=3, module=0x800adb1aa "main", format=0x800ac461f "VLC media player - %s", args=args@entry=0x7fffffffd418) at misc/messages.c:147
#4  0x0000000800ab9c9d in vlc_Log (obj=obj@entry=0x801c4f198, type=type@entry=3, module=module@entry=0x800adb1aa "main", format=format@entry=0x800ac461f "VLC media player - %s") at misc/messages.c:128
#5  0x0000000800a515db in libvlc_InternalInit (p_libvlc=p_libvlc@entry=0x801c4f198, i_argc=i_argc@entry=4, ppsz_argv=ppsz_argv@entry=0x7fffffffd590) at libvlc.c:238
#6  0x00000008008233ac in libvlc_new (argc=argc@entry=3, argv=argv@entry=0x7fffffffd600) at core.c:59
#7  0x0000000000400d6c in main (argc=3, argv=0x7fffffffd6a0) at cachegen.c:107
(gdb) q
A debugging session is active.

        Inferior 1 [process 44362] will be killed.

Quit anyway? (y or n) y
Comment 2 Yuta SATOH 2013-07-26 12:41:39 UTC
When I created FreeBSD 9.2-BETA1 GENERIC kernel (makeoptions WITH_CTF=1), issue occurred.

GENERIC # make
cc -c -x assembler-with-cpp -DLOCORE -O2 -frename-registers -pipe -fno-strict-aliasing -O1  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign  -Wmissing-include-dirs -fdiagnostics-show-option   -nostdinc  -I. -I../../.. -I../../../contrib/altq -D_KERNEL -D__FreeBSD_cc_version=900001 -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float  -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector  -Wno-error ../../../amd64/amd64/locore.S
cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -O1  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign  -Wmissing-include-dirs -fdiagnostics-show-option   -nostdinc  -I. -I../../.. -I../../../contrib/altq -D_KERNEL -D__FreeBSD_cc_version=900001 -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float  -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Wno-error  aic7xxx_reg_print.c
ctfconvert -L VERSION -g aic7xxx_reg_print.o
*** [aic7xxx_reg_print.o] Signal 11

Stop in /usr/src/sys-9.9999/amd64/compile/GENERIC.

# gdb ctfconvert
GNU gdb (Gentoo 7.6 p1) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-gentoo-freebsd9.0".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/bin/ctfconvert...(no debugging symbols found)...done.
(gdb) run -L VERSION -g aic7xxx_reg_print.o
Starting program: /usr/bin/ctfconvert -L VERSION -g aic7xxx_reg_print.o

Program received signal SIGSEGV, Segmentation fault.
0x000000080137760c in strcmp () from /lib/libc.so.7
(gdb) bt
#0  0x000000080137760c in strcmp () from /lib/libc.so.7
#1  0x0000000800a450b5 in dwarf_build_function_table () from /usr/lib/libdwarf.so.3
#2  0x0000000800a45ddf in dwarf_elf_init () from /usr/lib/libdwarf.so.3
#3  0x0000000000406293 in ?? ()
#4  0x0000000000405fc2 in ?? ()
#5  0x0000000000402881 in ?? ()
#6  0x0000000800633000 in ?? ()
#7  0x0000000000000000 in ?? ()
Comment 3 Yuta SATOH 2013-07-26 12:51:24 UTC
If you compile with the following procedure, the issue does not occur.
(This example is for 9.2-BETA1.)

export TARGET_VER="9.2"
export STATUS="BETA1"
export VANILLA="/vanilla/${TARGET_VER}"

mkdir -p ${VANILLA}
cd ${VANILLA}
wget "http://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/${TARGET_VER}-${STATUS}/base.txz"
tar xJf base.txz
emerge -u freebsd-lib
PATH="${VANILLA}/usr/sbin:${VANILLA}/usr/bin:${VANILLA}/sbin:${VANILLA}/bin:${VANILLA}/usr/libexec:${PATH}" \
LD_LIBRARY_PATH="${VANILLA}/lib:${VANILLA}/usr/lib:${LD_LIBRARY_PATH}" \
CC="${VANILLA}/usr/bin/clang" \
CFLAGS="-O2 -pipe" \
emerge freebsd-lib
Comment 4 Yuta SATOH 2013-08-01 12:57:57 UTC
Created attachment 354818 [details, diff]
sample patch for toolchain-binutils.eclass

One of the special patch of Gentoo was causing Comment 1 issue.
I added the patch to EPATCH_EXCLUDE.

After applying patch, please re-emerge freebsd-lib and binutils at least.

Issue Comment 2 has not be solved yet...
Comment 5 Yuta SATOH 2013-08-02 11:12:27 UTC
(In reply to Yuta SATOH from comment #4)
> Issue Comment 2 has not be solved yet...

I opened a new bug 479494 because the cause is different.
Comment 6 Aaron Pelton 2013-08-03 01:25:55 UTC
This is probably a duplicate of #463558
Comment 7 Yuta SATOH 2013-08-03 03:49:25 UTC
(In reply to Aaron Pelton from comment #6)
> This is probably a duplicate of #463558

segfault on occurs even in the case of USE="-*" emerge vlc


# emerge -pv glib freebsd-lib

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] sys-freebsd/freebsd-lib-9.1-r11  USE="ipv6 (multilib) ssl -atm -bluetooth -build -hesiod (-kerberos) -netware -profile -usb -zfs" 0 kB
[ebuild     U  ] dev-libs/glib-2.36.3-r1:2 [2.34.3:2] USE="-debug -fam (-selinux) -static-libs (-systemtap) {-test} -utils (-xattr)" PYTHON_TARGETS="python2_7%* (-python2_5) (-python2_6)" 0 kB
Comment 8 Ian Delaney (RETIRED) gentoo-dev 2015-04-18 03:46:28 UTC
bsd keywords dropped at vlc-2.1.5-r1.ebuild