www-client/chromium-18.0.1025.151- Segmentation fault on startup. dmesg | tail shows: chrome[28051]: segfault at 6537b315 ip b47390ec sp bfde6b84 error 6 in ld-2.13.so[b472e000+1c000] Reproducible: Always Steps to Reproduce: 1. Attempt to start chromium by typing 'chromium' in Konsole 2. 3. Actual Results: 'Segmentation fault' displayed Expected Results: chromium starts normally dmesg | tail shows: chrome[28051]: segfault at 6537b315 ip b47390ec sp bfde6b84 error 6 in ld-2.13.so[b472e000+1c000]
emerge --info Portage 2.2.0_alpha100 (default/linux/x86/10.0/desktop, gcc-4.5.3, glibc-2.13-r4, 3.2.14-gentoo-2 i686) ================================================================= System uname: Linux-3.2.14-gentoo-2-i686-AMD_Phenom-tm-_II_X4_965_Processor-with-gentoo-2.1 Timestamp of tree: Wed, 11 Apr 2012 02:00:01 +0000 distcc 3.1 i686-pc-linux-gnu [disabled] ccache version 3.1.6 [disabled] app-shells/bash: 4.2_p20 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.6.7-r2, 2.7.2-r3, 3.1.4-r3, 3.2.2 dev-util/ccache: 3.1.6 dev-util/cmake: 2.8.7-r5 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.1 sys-apps/openrc: 0.9.9.3 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.21.1-r1 sys-devel/gcc: 4.3.6-r1, 4.4.7, 4.5.3-r2 sys-devel/gcc-config: 1.6 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r1 sys-kernel/linux-headers: 3.1 (virtual/os-headers) sys-libs/glibc: 2.13-r4 Repositories: gentoo local kde-sunset ikelos Installed sets: @kde-3.5, @kde-4.7, @system ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="*" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=k8-sse3 -mtune=amdfam10 -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=k8-sse3 -mtune=amdfam10 -O2 -pipe -fomit-frame-pointer" DISTDIR="/mnt/portage.autofs/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps=y" FEATURES="assume-digests binpkg-logs buildpkg distlocks ebuild-locks fixlafiles news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://mirrors.linuxant.fr/distfiles.gentoo.org/ http://mirror.qubenet.net/mirror/gentoo/ http://mirror.ovh.net/gentoo-distfiles/ http://gentoo.mneisen.org/ http://mirror.bytemark.co.uk/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/ http://ftp.heanet.ie/pub/gentoo/ http://mirror.netcologne.de/gentoo/ http://gentoo.tiscali.nl/" LANG="en_GB.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en en_GB" MAKEOPTS="-j12 --load-average=15.2" PKGDIR="/mnt/portage.autofs/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/mnt/portage.autofs/tmp-portage" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage /var/lib/layman/kde-sunset /var/lib/layman/ikelos" SYNC="rsync://blue/gentoo-portage" USE="3dnow X a52 aac accessibility acl acpi alsa amarok amr authdaemond bash-completion berkdb bluetooth branding bzip2 cairo caps cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dv dvd dvdr dvdread emboss encode exif fam firefox flac fortran gdbm gdu gif gpm gtk iconv ieee1394 ipv6 jpeg kde lcms ldap libnotify lm_sensors lock mad mmx mng modules mp3 mp4 mpeg mudflap mysql ncurses network nls nptl nptlonly ofx ogg opengl openmp oss pam pango pcre pdf png policykit ppds pppd qt3 qt3support qt4 readline samba sasl sdl semantic-desktop session spell sse ssl startup-notification svg sysfs tcpd thunar tiff truetype udev uk_bleb uk_rt unicode usb v4l v4l2 vorbis x264 x86 xcb xine xinerama xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="lvm syslog" DVB_CARDS="usb-dib0700" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" SANE_BACKENDS="hp5590" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
I've looked for ways to enable debug but can't find it in this ebuild
gdb /usr/lib/chromium-browser/chrome GNU gdb (Gentoo 7.3.1 p2) 7.3.1 Copyright (C) 2011 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 "i686-pc-linux-gnu". For bug reporting instructions, please see: <http://bugs.gentoo.org/>... Reading symbols from /usr/lib/chromium-browser/chrome...(no debugging symbols found)...done. (gdb) run Starting program: /usr/lib/chromium-browser/chrome Program received signal SIGSEGV, Segmentation fault. 0xb7fed0ec in ?? () from /lib/ld-linux.so.2 (gdb) bt #0 0xb7fed0ec in ?? () from /lib/ld-linux.so.2 #1 0xb7fe4f7f in ?? () from /lib/ld-linux.so.2 #2 0xb7ff6240 in ?? () from /lib/ld-linux.so.2 #3 0xb7fe69c0 in ?? () from /lib/ld-linux.so.2 #4 0xb7fe2907 in ?? () from /lib/ld-linux.so.2 Backtrace stopped: Not enough registers or memory available to unwind further (gdb)
Created attachment 308513 [details] strace /usr/lib/chromium-browser/chrome 2> /tmp/strace-chromium
revdep-rebuild -p -i * Configuring search environment for revdep-rebuild * Checking reverse dependencies * Packages containing binaries and libraries broken by a package update * will be emerged. * Collecting system binaries and libraries * Generated new 1_files.rr * Collecting complete LD_LIBRARY_PATH * Generated new 2_ldpath.rr * Checking dynamic linking consistency [ 100% ] * Dynamic linking on your system is consistent... All done.
Re-emerging chromium has no effect on this issue
Is this by chance related to Bug 410777 ? What version of ICU do you have installed ? Have you tried removing your ~/.cache/chromium/ and ~/.config/chromium/ directories ?
(In reply to comment #7) > Is this by chance related to Bug 410777 ? What version of ICU do you have > installed ? > Have you tried removing your ~/.cache/chromium/ and ~/.config/chromium/ > directories ? dev-libs/icu-4.8.1.1-r1 (I've already experienced bug 410777 and masked icu-49, https://bugs.gentoo.org/show_bug.cgi?id=410777#c3) Yes, I tried rm -r ~/.cache/chromium/* ~/.config/chromium/* After rm, chromium segfaults before creating anything in these cache & config folders.
A segfault in ld-linux.so is pretty weird. Here's a guide for getting better backtraces: http://www.gentoo.org/proj/en/qa/backtraces.xml ld-linux.so.2 is part of sys-libs/glibc, so you would need to rebuild that.
(In reply to comment #9) > A segfault in ld-linux.so is pretty weird. > > Here's a guide for getting better backtraces: > > http://www.gentoo.org/proj/en/qa/backtraces.xml > > ld-linux.so.2 is part of sys-libs/glibc, so you would need to rebuild that. OK, I'll give that a try. Maybe I'll try re-emerging sys-libs/glibc first before applying the backtraces options.
Re-emerging glibc does not resolve the issue. Re-emerging chromium with the backtrace options set fails with: /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/../../../../i686-pc-linux-gnu/bin/ld: failed to set dynamic section sizes: Memory exhausted I have 16GB of physical memory!! What now?
As I don't seem to ba able to emerge chromium with backtrace enabled I thought it might be helpful just to emerge glibc with bt. This does give some additional information but I don't know what to make of it. gdb /usr/lib/chromium-browser/chrome GNU gdb (Gentoo 7.4 p1) 7.4 Copyright (C) 2012 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 "i686-pc-linux-gnu". For bug reporting instructions, please see: <http://bugs.gentoo.org/>... Reading symbols from /usr/lib/chromium-browser/chrome...(no debugging symbols found)...done. (gdb) run Starting program: /usr/lib/chromium-browser/chrome Program received signal SIGSEGV, Segmentation fault. elf_dynamic_do_rela (relsize=<optimized out>, reladdr=3037536256, map=<optimized out>, lazy=<optimized out>) at do-rel.h:105 105 do-rel.h: No such file or directory. (gdb) bt #0 elf_dynamic_do_rela (relsize=<optimized out>, reladdr=3037536256, map=<optimized out>, lazy=<optimized out>) at do-rel.h:105 #1 _dl_relocate_object (scope=0xb50d21b8, reloc_mode=1, consider_profiling=0) at dl-reloc.c:268 #2 0xb7fe4f7f in dl_main (phdr=0x80000034, phnum=11, user_entry=0xbfffe79c, auxv=0xbfffe95c) at rtld.c:2260 #3 0xb7ff6240 in _dl_sysdep_start (start_argptr=0xbfffe800, dl_main=0xb7fe3ee0 <dl_main>) at ../elf/dl-sysdep.c:244 #4 0xb7fe69c0 in _dl_start_final (arg=0xbfffe800) at rtld.c:336 #5 _dl_start (arg=0xbfffe800) at rtld.c:562 #6 0xb7fe2907 in _start () from /lib/ld-linux.so.2 (gdb)
(In reply to comment #11) > Re-emerging chromium with the backtrace options set fails with: > /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/../../../../i686-pc-linux-gnu/bin/ld: > failed to set dynamic section sizes: Memory exhausted > > I have 16GB of physical memory!! What now? I suspect you are running into the 2 GB per-process memory limit there. It is a bit odd for you to be running x86 on a Phenom II by the way. :) I don't have any thoughts on that backtrace, but maybe someone with some glibc knowledge might. I would like to wait for phajdan.jr to have a look and bring in an expert if he thinks that is appropriate.
Looking at your traces, I noticed the following: ------------------------------------------ open("/usr/lib/libnvidia-glcore.so.290.10", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0RAL4\0\0\0"..., 512) = 512 [...] mmap2(NULL, 31701984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xafa0d000 [...] mprotect(0xafa0d000, 31223808, PROT_READ|PROT_WRITE) = 0 --- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x653a6315} (Segmentation fault) --- ------------------------------------------ The segfault occurs while accessing nvidia-glcore.so. Could you try upgrading your nvidia-drivers (and don't forget to eselect opengl and reboot). Have you checked other versions of chromium ?
I'm running x11-drivers/nvidia-drivers-290.10-r2. Later dirvers are broken, see bug 409247. I have been running this nvidia-drivers version since Feb 5 and I sure I've had chromium working at times between then and now. I guess it could be kernel related, I'm on sys-kernel/gentoo-sources-3.2.14. I try an older kernel & nvidia-drivers
I selected xorg-x11 opengl driver rebooted and chromium started OK. I reverted to the previous nvidia driver, x11-drivers/nvidia-drivers-290.10, selected opengl nvidia, rebooted and chromium started OK. I then installed the original nvidia driver, x11-drivers/nvidia-drivers-290.10-r2, selected opengl nvidia, rebooted and chromium still started OK. The issue has 'gone away'. Thanks for your help guys. The upside is I've learnt how to get backtraces.
(In reply to comment #13) > (In reply to comment #11) > > Re-emerging chromium with the backtrace options set fails with: > > /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/../../../../i686-pc-linux-gnu/bin/ld: > > failed to set dynamic section sizes: Memory exhausted > > > > I have 16GB of physical memory!! What now? > > I suspect you are running into the 2 GB per-process memory limit there. It > is a bit odd for you to be running x86 on a Phenom II by the way. :) > > I don't have any thoughts on that backtrace, but maybe someone with some > glibc knowledge might. I would like to wait for phajdan.jr to have a look > and bring in an expert if he thinks that is appropriate. When I started using gentoo, back in 2004, 64bit seemed a bit flaky. Now converting to from 32 to 64 bit is non-trival. The issue has now gone away. See previous post.