After an upgrade to xorg-server-1.13.0-r1 both Gimp (2.6.12-r5) and Inkscape (0.48.3.1) crash the xorg-server when clicking into the drawing area. Steps to reproduce: Upgrade to xorg-server-1.13.0-r1 Start up The Gimp or Inkscape Click onto the canvas Result: xorg-server crashes and restarts (most times) or stays crashed Expected result: xorg-server does not crash and you can draw etc. in the programmes Reproducible: always Solution: Downgrade to the previous stable xorg-server (1.12.4) System information: Linux 3.5.7-gentoo #1 SMP PREEMPT Sun Dec 9 14:27:29 CET 2012 x86_64 Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz GenuineIntel GNU/Linux
Portage 2.1.11.31 (default/linux/amd64/10.0/desktop, gcc-4.5.4, glibc-2.15-r3, 3.5.7-gentoo x86_64) ================================================================= System uname: Linux-3.5.7-gentoo-x86_64-Intel-R-_Core-TM-_i5-2520M_CPU_@_2.50GHz-with-gentoo-2.1 Timestamp of tree: Mon, 10 Dec 2012 19:15:01 +0000 ld GNU ld (GNU Binutils) 2.22 app-shells/bash: 4.2_p37 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.3-r2, 3.2.3 dev-util/cmake: 2.8.9 dev-util/pkgconfig: 0.27.1 sys-apps/baselayout: 2.1-r1 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.11.6 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.5.4 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r3 sys-kernel/linux-headers: 3.6 (virtual/os-headers) sys-libs/glibc: 2.15-r3 Repositories: gentoo tlp ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA AdobeFlash-10.3 skype-4.0.0.7-copyright" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/" LANG="en_GB.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="/home/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/tlp" SYNC="rsync://rsync8.de.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif gpm gtk hdaps iconv ipv6 java jpeg lcms ldap libnotify mad mmx mmx2 mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pppd pulseaudio qt3support readline sdl session spell sse sse2 sse3 ssl startup-notification static-libs svg synaptics tcpd theora tiff truetype udev udisks ukit unicode upower usb v4l v4l2 vaapi vdpau vorbis wma wxwidgets x264 xcb xml xv xvid xvmc zlib" 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" LINGUAS="en_GB" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia 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
Please attach a relevant Xorg log (/var/log/Xorg.*.log usually).
Not seeing this behaviour with x11-base/xorg-server-1.13.0-r1 , media-gfx/inkscape-0.48.3.1 and media-gfx/gimp-2.8.2-r1 .
Created attachment 332162 [details] Xorg.0.log from after the crash Upgraded to xorg-server-1.13.0-r1. Still crashes, so I can provide a Xorg.0.log :D.
The function names (between the brackets) are missing. >[ 2941.331] (EE) 0: /usr/bin/X (xorg_backtrace+0x36) [0x59a356] >[ 2941.331] (EE) 1: /usr/bin/X (0x400000+0x19e259) [0x59e259] >[ 2941.331] (EE) 2: /lib64/libpthread.so.0 (0x7ff50029c000+0x10460 [0x7ff5002ac460] >[ 2941.331] (EE) 3: /usr/bin/X (0x400000+0x4a8da) [0x44a8da] >[ 2941.331] (EE) 4: /usr/bin/X (0x400000+0x44214) [0x444214] >[ 2941.331] (EE) 5: /usr/bin/X (0x400000+0x12ab9e) [0x52ab9e] >[ 2941.332] (EE) 6: /usr/bin/X (0x400000+0x39ae1) [0x439ae1] >[ 2941.332] (EE) 7: /usr/bin/X (0x400000+0x2823a) [0x42823a] >[ 2941.332] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x7ff4fef294bd] >[ 2941.332] (EE) 9: /usr/bin/X (0x400000+0x27d99) [0x427d99] Can you try to enable debugging information, emerge xorg-server again and post a new log? That way, the chain of functions in the /usr/bin/X lines are revealed which allows the developer to pinpoint the issue. More information can be found at http://www.gentoo.org/proj/en/qa/backtraces.xml
> Can you try to enable debugging information, emerge xorg-server again and > post a new log? > > That way, the chain of functions in the /usr/bin/X lines are revealed which > allows the developer to pinpoint the issue. > > More information can be found at > > http://www.gentoo.org/proj/en/qa/backtraces.xml Can't figure out how to do that. Put the -ggdb into cflags and added FEATURES="splitdebug" into make.conf, but the Xorg.0.log still doesn't show anything enlightening. Do I need to run startx with gdb or something? Sorry, this is my first bug report (I think), definitely my first attempt at getting debugging info.
It might be that FEATURES="splitdebug" is not supported by X itself thus it does not know where to find these debug symbols, so either try removing that or run `gdb startx` (after which you type `run` and press enter) which should give you a better stacktrace. Or you can follow the upstream guidelines at http://wiki.x.org/wiki/Development/Documentation/ServerDebugging
So, let's assume that it's GTK+ related?
The x.org wiki contains the correct instructions on how to obtain a proper backtrace. Until that is provided I won't assume anything.
OK, did as the X.org wiki told and got this for the inkscape crash: Program received signal SIGSEGV, Segmentation fault. 0x000000000044a8da in ActivateKeyboardGrab (keybd=0x27f66c0, grab=0x29c5130, time=..., passive=0) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c:1567 1567 /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c: No such file or directory. (gdb) cont Continuing. Program received signal SIGABRT, Aborted. 0x00007fca7d697ad5 in raise () from /lib64/libc.so.6 and Program received signal SIGSEGV, Segmentation fault. 0x000000000044a8da in ActivateKeyboardGrab (keybd=0x19a3480, grab=0x1b52e10, time=..., passive=0) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c:1567 1567 /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c: No such file or directory. from the Gimp crash, which looks more or less the same.
The "bt" command will print the full backtrace (instead of cont). Please attach it.
Here you go: Program received signal SIGSEGV, Segmentation fault. 0x000000000044a8da in ActivateKeyboardGrab (keybd=0x2b976c0, grab=0x2dd57f0, time=..., passive=0) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c:1567 1567 /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c: No such file or directory. (gdb) bt #0 0x000000000044a8da in ActivateKeyboardGrab (keybd=0x2b976c0, grab=0x2dd57f0, time=..., passive=0) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c:1567 #1 0x0000000000444214 in GrabDevice (client=0x2e0bc40, dev=0x2b976c0, pointer_mode=1, keyboard_mode=1, grabWindow=<optimized out>, ownerEvents=<optimized out>, ctime=26575418, mask=0x7fffe58b8570, grabtype=1, curs=0, confineToWin=0, status=0x7fffe58b8558 "") at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/events.c:5052 #2 0x000000000052ab9e in ProcXGrabDevice (client=0x2e0bc40) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/Xi/grabdev.c:134 #3 0x0000000000439ae1 in Dispatch () at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/dispatch.c:428 #4 0x000000000042823a in main (argc=5, argv=<optimized out>, envp=<optimized out>) at /home/tmp/portage/x11-base/xorg-server-1.13.0-r1/work/xorg-server-1.13.0/dix/main.c:295 (gdb) cont Continuing. Program received signal SIGABRT, Aborted. 0x00007f7f0c3ebad5 in raise () from /lib64/libc.so.6
Portage 2.1.11.31 (default/linux/amd64/10.0/desktop/gnome, gcc-4.5.4, glibc-2.15-r3, 3.6.11-gentoo x86_64) ================================================================= System uname: Linux-3.6.11-gentoo-x86_64-Intel-R-_Core-TM-_i7_CPU_Q_820_@_1.73GHz-with-gentoo-2.1 Timestamp of tree: Sun, 23 Dec 2012 07:45:01 +0000 ld GNU ld (GNU Binutils) 2.22 app-shells/bash: 4.2_p37 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.3-r2, 3.2.3 dev-util/cmake: 2.8.9 dev-util/pkgconfig: 0.27.1 sys-apps/baselayout: 2.1-r1 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.6 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.4.7, 4.5.4 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.6 (virtual/os-headers) sys-libs/glibc: 2.15-r3 Repositories: gentoo ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=core2 -mtune=generic" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /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/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo" CXXFLAGS="-O2 -pipe -march=core2 -mtune=generic" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://gentoo.arcticnetwork.ca/ http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9" 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="" SYNC="rsync://peer1.lan/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli colord consolekit cracklib crypt cuda cups cxx dbus djvu dri dts dvd dvdr eds emboss encode evo exif faac fam fbcondecor fbsplash ffmpeg firefox flac fprint gd gdbm gif gnome gnome-keyring gnome-online-accounts gphoto2 gpm gstreamer gtk iconv iproute2 ipv6 joystick jpeg laptop lcms libnotify mad mmx mng modules mp3 mp4 mpeg mudflap multilib nautilus ncurses netlink networkmanager nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pppd pulseaudio qt3support raw readline samba sdl session smp socialweb spell sse sse2 ssl ssse3 startup-notification svg syslog threads tiff truetype udev unicode upower usb v4l v4l2 vdpau vim-syntax vimpager vorbis wxwidgets x264 xcb xml xv xvid xvmc zlib" 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 keyboard mouse joystick synaptics wacom" 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" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="dummy 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
I can confirm this nasty bug too! Upon doing some searching online, the issue has something to do with the xorg-server input system, specifically, it was updated to a new implementation at some point a while back which has a bug with the touchpad (synaptics in my case) being disabled. Easy to reproduce on my Thinkpad W510. Login to Gnome/3, disable the touchpad using Fn+F8. Open either the GIMP (v2.6.12), or Inkscape (v0.48.4 r9939 (Dec 23 2012)), click anywhere in the document window, or select the magnifier tool and try to select a region. xorg-server crashes with: [ 817.186] (EE) Backtrace: [ 817.187] (EE) 0: /usr/bin/Xorg (xorg_backtrace+0x36) [0x59aa66] [ 817.187] (EE) 1: /usr/bin/Xorg (0x400000+0x19e969) [0x59e969] [ 817.187] (EE) 2: /lib64/libpthread.so.0 (0x7f0da48f9000+0x10460) [0x7f0da4909460] [ 817.187] (EE) 3: /usr/bin/Xorg (0x400000+0x4aa0a) [0x44aa0a] [ 817.187] (EE) 4: /usr/bin/Xorg (0x400000+0x44344) [0x444344] [ 817.187] (EE) 5: /usr/bin/Xorg (0x400000+0x12abde) [0x52abde] [ 817.187] (EE) 6: /usr/bin/Xorg (0x400000+0x39c11) [0x439c11] [ 817.187] (EE) 7: /usr/bin/Xorg (0x400000+0x2838a) [0x42838a] [ 817.187] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x7f0da357b4bd] [ 817.187] (EE) 9: /usr/bin/Xorg (0x400000+0x27ee9) [0x427ee9] [ 817.187] (EE) [ 817.187] (EE) Segmentation fault at address 0x28 Then when I re-login, and enable the touchpad with Fn+F8, then open GIMP or Inksapce doing the test as above, the actions do not crash xorg-server. I couldn't find any Gentoo specific information about the bug other than this report and one other which is a duplicate of this issue: https://bugs.gentoo.org/show_bug.cgi?id=430070 However I did find quite a few Ubuntu users reporting the same issue as far back as July 5th, 2012. It seems from this bug tracker report: https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1021517 ... that the issue was resolved by reverting back to the older input system. I don't think this is a critical bug, but it's annoying to keep the touchpad enabled with I'm at my desk.
Some grab related fixes have made it into git master recently. Maybe you could check them out, especially this one: http://cgit.freedesktop.org/xorg/xserver/commit/?id=f793b5fd3eb16a2ada130367c2ffebeede69a322
Created attachment 333174 [details, diff] Combination patch of recent Xi/dix 'grab' commits from upstream. Combination of patches from: http://cgit.freedesktop.org/xorg/xserver/log/?id=f793b5fd3eb16a2ada130367c2ffebeede69a322&qt=grep&q=grab From 2012-10-10 to 2012-12-17.
Thanks for the quick reply! I tried the patch you supplied with a direct link but the issue remained. I searched the commit logs for 'grab' and scanning through the top 10 or so, found: dix: fix crash on shutdown if a disabled device is still grabbed (XI1 grab) http://cgit.freedesktop.org/xorg/xserver/commit/?id=4b7f00346daed20c96f3e8ea13ae411858a5424b The description sounded promising, but that didn't fix the issue either. I then combined all patches in reverse chronological order from the above patch to the most recent, and it worked! I quickly eye-balled the patches, and one hunk failed to apply. I've attaching my working diff for reference/testing... Thanks again for the tip and happy holidays!
Most of the patches are part of xorg-server-1.13.1 which has just been committed. Marking as FIXED, please reopen if you still see this bug.