Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[solved] gnome-shell/3.6.[23] segfaults during start of gdm
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
anaximander
n00b
n00b


Joined: 01 Nov 2007
Posts: 8

PostPosted: Fri Feb 22, 2013 7:59 am    Post subject: [solved] gnome-shell/3.6.[23] segfaults during start of gdm Reply with quote

Hi gentoo users,

i have a problem with gnome-shell, which segfaults during starting gdm as well as when starting gnome-session manually. the problem appeared sometime last week after an update. i tried downgrading a few suspicious packages but could not solve the problem.

Code:

[ebuild   R    ] gnome-base/gnome-shell-3.6.3.1  USE="bluetooth i18n networkmanager -systemd" PYTHON_TARGETS="python2_7 -python2_6"

problem also existed with gnome-shell-3.6.2

dmesg output shows two lines with a gnome-shell segfault when gdm wants to start (before any login screen is shown) or euqivalent after gnome-session start.
Code:

[   59.636780] gnome-shell[2634]: segfault at 7f6e9cb00010 ip 00007f6e9cb00010 sp 00007fff5eebda78 error 15
[   60.571152] gnome-shell[2662]: segfault at 7f224846e010 ip 00007f224846e010 sp 00007fff5b4a6a78 error 15


now i would like to produce a meaningful backtrace. i am running gentoo hardened on amd64, however after the problem appeared i disabled grsec in the kernel completely, set selinux to disabled, and set my compiler to x86_64-pc-linux-gnu-4.6.3-hardenednopie (although i am not sure this would still be necessary, did it because i found it at http://www.gentoo.org/proj/en/hardened/hardened-debugging.xml?style=printable.

to get debug in formation i set the "splitdebug" portage FEATURE and added -ggdb to my CFLAGS

part of my make.conf
Code:

CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -ggdb"
CXXFLAGS="${CFLAGS}"
FFLAGS="${CFLAGS}"
FCFLAGS="${FFLAGS}"
ACCEPT_KEYWORDS="~amd64"
FEATURES="splitdebug"


I recompiled a few packages to get the debug symbols and also see that portage builds with -ggdb. however the core dump produced by the gnome-shell segfault still gives me only

Code:

(gdb) bt
#0  0x0000000000000002 in ?? ()
#1  0x0000000001cce120 in ?? ()
#2  0x0000000000000002 in ?? ()
#3  0x0000000002137681 in ?? ()
#4  0x00007f189c006d20 in ?? ()
#5  0x0000000000000000 in ?? ()


any idea what i do wrong? (ideas to solve the original problem are of course welcome as well :-))


Last edited by anaximander on Sun Feb 24, 2013 2:53 pm; edited 1 time in total
Back to top
View user's profile Send private message
anaximander
n00b
n00b


Joined: 01 Nov 2007
Posts: 8

PostPosted: Fri Feb 22, 2013 8:03 am    Post subject: Reply with quote

my emerge --info

Code:

Portage 2.2.0_alpha163 (hardened/linux/amd64/selinux, gcc-4.6.3-hardenednopie, glibc-2.16.0, 3.7.8-hardened x86_64)
=================================================================
System uname: Linux-3.7.8-hardened-x86_64-Intel-R-_Core-TM-_i5_CPU_M_540_@_2.53GHz-with-gentoo-2.2
KiB Mem:     3902944 total,   2659980 free
KiB Swap:    4415484 total,   4415484 free
Timestamp of tree: Thu, 21 Feb 2013 14:45:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash:          4.2_p42
dev-java/java-config:     2.1.12-r1
dev-lang/python:          2.7.3-r3, 3.2.3-r2
dev-util/cmake:           2.8.10.2-r1
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3, 1.11.6, 1.12.6, 1.13.1
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.7 (virtual/os-headers)
sys-libs/glibc:           2.16.0
Repositories: gentoo anaximander
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -ggdb"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-march=native -O2 -ggdb"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox selinux sesandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-march=native -O2 -ggdb"
GENTOO_MIRRORS="ftp://gentoo.inode.at/source/ rsync://gentoo.lagis.at/gentoo-distfiles/ ftp://gentoo.lagis.at/ ftp://gd.tuwien.ac.at/opsys/linux/gentoo/ http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/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="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.at.gentoo.org/gentoo-portage"
USE="X a52 aac acpi aim alsa amd64 avahi bash-completion berkdb bluetooth branding bzip2 cairo cdda cdr cleartype cli consolekit corefonts cracklib crypt css cups cxx dbus djvu dri dts dv dvd dvdr dvi eds encode evo exif fftw flac ftp gcj gd gdbm geoip gif gimp gnome gnome-keyring gnome-online-accounts gnuplot gpg gpm gsl gstreamer gtk gtk3 hardened hdf5 iconv icq icu imap ios ipv6 jabber java jingle jpeg jpeg2k justify lapack latex lcms lzma maildir matroska mbox mime mms mmx modules mp3 mp4 mpeg mtb mtp mudflap multilib nautilus ncurses networkmanager nls nptl nsplugin ogg open_perms opengl openmp pam pax_kernel pcre pdf png policykit pulseaudio python quicktime raw readline rss samba scanner selinux sendto session smartcard smp speex spell sse sse2 ssl subversion svg tcpd theora threads tiff truetype type1 udev unicode urandom usb v4l vim-syntax vnc vorbis wifi wmf x264 xinerama xpm xps xvid zeroconf zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif 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" 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 synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="intel" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Back to top
View user's profile Send private message
anaximander
n00b
n00b


Joined: 01 Nov 2007
Posts: 8

PostPosted: Sun Feb 24, 2013 2:44 pm    Post subject: Reply with quote

something in the hardened kernel/toolchain prevented me from making a backtrace. no idea what it was in detail.
here a backtrace of the problem

gdb /usr/bin/gnome-shell core
Code:

(gdb) bt
#0  0x00007f11d286d010 in ?? ()
#1  0x00007f11fa59b4f9 in clutter_actor_add_constraint (self=0x2dfcdd0, constraint=0x28e1c80) at ./clutter-actor.c:16383
#2  0x00007f11f2b4855c in ffi_call_unix64 () from /usr/lib64/libffi.so.6
#3  0x00007f11f2b47ea3 in ffi_call () from /usr/lib64/libffi.so.6
#4  0x00007f11fafa4c5a in gjs_invoke_c_function (context=0x277c480, function=0x2e23ea0, obj=<optimized out>, js_argc=1, js_argv=0x7f11d33fe350, js_rval=0x7fff448f0970) at gi/function.c:893
#5  0x00007f11fafa54c7 in function_call (context=0x277c480, js_argc=1, vp=0x7f11d33fe340) at gi/function.c:1204
#6  0x00007f11f8af5d35 in CallJSNative (vp=0x7f11d33fe340, argc=<optimized out>, native=<optimized out>, cx=0x277c480) at jscntxtinlines.h:701
#7  js::Invoke (cx=0x277c480, argsRef=..., flags=<optimized out>) at jsinterp.cpp:696
#8  0x00007f11f8ae21f2 in js::Interpret (cx=0x277c480, entryFrame=0x7f11d33fe2d8, inlineCallCount=0, interpMode=JSINTERP_NORMAL) at jsinterp.cpp:4810
#9  0x00007f11f8af5675 in js::RunScript (cx=0x277c480, script=<optimized out>, fp=0x7f11d33fe2d8) at jsinterp.cpp:653
#10 0x00007f11f8af5b12 in js::Invoke (cx=0x277c480, argsRef=..., flags=<optimized out>) at jsinterp.cpp:740
#11 0x00007f11f8ac7ca1 in js_fun_apply (cx=0x277c480, argc=<optimized out>, vp=0x7f11d33fe2a8) at jsfun.cpp:2205
#12 0x00007f11f8aebfdc in CallJSNative (vp=0x7f11d33fe2a8, argc=2, native=<optimized out>, cx=0x277c480) at jscntxtinlines.h:701
#13 js::Interpret (cx=0x277c480, entryFrame=0x7f11d33fe240, inlineCallCount=0, interpMode=JSINTERP_NORMAL) at jsinterp.cpp:4799
#14 0x00007f11f8af5675 in js::RunScript (cx=0x277c480, script=<optimized out>, fp=0x7f11d33fe240) at jsinterp.cpp:653
#15 0x00007f11f8af5b12 in js::Invoke (cx=0x277c480, argsRef=..., flags=<optimized out>) at jsinterp.cpp:740
#16 0x00007f11f8ac7ca1 in js_fun_apply (cx=0x277c480, argc=<optimized out>, vp=0x7f11d33fe210) at jsfun.cpp:2205
#17 0x00007f11f8aebfdc in CallJSNative (vp=0x7f11d33fe210, argc=2, native=<optimized out>, cx=0x277c480) at jscntxtinlines.h:701
#18 js::Interpret (cx=0x277c480, entryFrame=0x7f11d33fe1b8, inlineCallCount=0, interpMode=JSINTERP_NORMAL) at jsinterp.cpp:4799
#19 0x00007f11f8af5675 in js::RunScript (cx=0x277c480, script=<optimized out>, fp=0x7f11d33fe1b8) at jsinterp.cpp:653
#20 0x00007f11f8af5b12 in js::Invoke (cx=0x277c480, argsRef=..., flags=<optimized out>) at jsinterp.cpp:740
#21 0x00007f11f8ac7ca1 in js_fun_apply (cx=0x277c480, argc=<optimized out>, vp=0x7f11d33fe188) at jsfun.cpp:2205
#22 0x00007f11f8aebfdc in CallJSNative (vp=0x7f11d33fe188, argc=2, native=<optimized out>, cx=0x277c480) at jscntxtinlines.h:701
#23 js::Interpret (cx=0x277c480, entryFrame=0x7f11d33fe048, inlineCallCount=2, interpMode=JSINTERP_NORMAL) at jsinterp.cpp:4799
#24 0x00007f11f8af5675 in js::RunScript (cx=0x277c480, script=<optimized out>, fp=0x7f11d33fe048) at jsinterp.cpp:653
#25 0x00007f11f8af71b5 in js::Execute (cx=0x277c480, chain=0x7f11d3203048, script=0x276ad20, prev=<optimized out>, flags=<optimized out>, result=0x7fff448f24d8) at jsinterp.cpp:1028
#26 0x00007f11f8a6ff95 in EvaluateUCScriptForPrincipalsCommon (compileVersion=<optimized out>, rval=0x7fff448f24d8, lineno=1, filename=<optimized out>, length=54, chars=0x288d3a0, principals=<optimized out>,
    obj=0x7f11d3203048, cx=0x277c480) at jsapi.cpp:5031
#27 JS_EvaluateUCScriptForPrincipals (cx=0x277c480, obj=0x7f11d3203048, principals=<optimized out>, chars=0x288d3a0, length=54, filename=<optimized out>, lineno=1, rval=0x7fff448f24d8) at jsapi.cpp:5058
#28 0x00007f11f8a70262 in JS_EvaluateUCScript (cx=<optimized out>, obj=<optimized out>, chars=<optimized out>, length=<optimized out>, filename=<optimized out>, lineno=<optimized out>, rval=0x7fff448f24d8) at jsapi.cpp:5066
#29 0x00007f11faf91b09 in gjs_context_eval (js_context=0x7f11d8002ad0, script=<optimized out>, script_len=<optimized out>, filename=0x7f11fb958844 "<main>", exit_status_p=0x7fff448f2554, error=0x7fff448f2548)
    at gjs/context.c:1031
#30 0x00007f11fb8fd1df in gnome_shell_plugin_start (plugin=<optimized out>) at gnome-shell-plugin.c:173
#31 0x00007f11fb1fc82b in meta_plugin_manager_new (screen=0x135c1c0) at compositor/meta-plugin-manager.c:102
#32 0x00007f11fb1f91a4 in meta_compositor_manage_screen (compositor=<optimized out>, screen=0x135c1c0) at compositor/compositor.c:560
#33 0x00007f11fb212594 in enable_compositor (display=0x280a2b0, composite_windows=<optimized out>) at core/display.c:416
#34 meta_display_open () at core/display.c:888
#35 0x00007f11fb21f3ed in meta_run () at core/main.c:542
#36 0x0000000000401dbc in main (argc=1, argv=0x7fff448f3248) at main.c:416
Back to top
View user's profile Send private message
anaximander
n00b
n00b


Joined: 01 Nov 2007
Posts: 8

PostPosted: Sun Feb 24, 2013 2:53 pm    Post subject: Reply with quote

after i saw the backtrace i recompiled libffi cogl and clutter which fixed the segmentation fault!

I am pretty sure i recompile cogl and clutter already early as an attempt to fix the problem.
hope it helps someone else in case of having similar troubles!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum