Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 192310 - [gnome-experimental] java applications (eg javaws, eclipse-3.2) segfault on startup due to gnome-extra/bug-buddy-2.20.0
Summary: [gnome-experimental] java applications (eg javaws, eclipse-3.2) segfault on s...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL: http://bugzilla.gnome.org/show_bug.cg...
Whiteboard:
Keywords:
: 193756 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-09-12 15:28 UTC by Florian Scandella
Modified: 2007-10-22 17:25 UTC (History)
5 users (show)

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


Attachments
bug-buddy-2.20.0.ebuild - applies patch and adds USE flag (bug-buddy-2.20.0.ebuild,1.31 KB, text/plain)
2007-09-23 14:11 UTC, Mike Auty (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Scandella 2007-09-12 15:28:41 UTC
i'm running gentoo unstable + gnome-overlay. i've applied the upstream tooltips patch to gtk.
java-1.6: javaws and eclipse-3.2 segfault at startup, G_SLICE=always-malloc changes nothing. stacktrace is not very helpfull (no symbols) although i tried to compile gtk,glib and pango with -g, without -fomit-frame-pointer and nostrip. i've also disabled xinerama.
java-1.5: javaws and eclipse-3.2 start if i set G_SLICE=always-malloc but eclipse crashes after some usage (not related to tooltips imho) -> same thing as 1.6
using XToolkit or MToolkit has no effect.


Reproducible: Always

Steps to Reproduce:
1.install gentoo ~x86
2.install gnome-overlay
3.run eclipse-3.2

Actual Results:  
eclipse, javaws segfaults and bug buddy appears but has no usefull informations (i guess its debugging the wrong thread)

#0  0xb7fd5410 in __kernel_vsyscall ()
#1  0xb7fa7658 in pthread_join () from /lib/libpthread.so.0
#2  0x0804dce8 in ContinueInNewThread ()
#3  0x080497f6 in main ()

if i use gdb to debug the actual crash it's there are no symbols.



Portage 2.1.3.9 (default-linux/x86/2007.0/desktop, gcc-4.2.0, glibc-2.6.1-r0, 2.6.22-gentoo-r6 i686)
=================================================================
System uname: 2.6.22-gentoo-r6 i686 AMD Athlon(tm) XP 3000+
Timestamp of tree: Wed, 12 Sep 2007 13:00:01 +0000
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.5.1-r2
sys-apps/baselayout: 1.12.10-r4
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18
sys-devel/gcc-config: 1.4.0-r2
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-mtune=athlon-xp -march=athlon-xp -O2 -fomit-frame-pointer -frename-registers -fweb -ftracer -fgcse-after-reload -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/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-mtune=athlon-xp -march=athlon-xp -O2 -fomit-frame-pointer -frename-registers -fweb -ftracer -fgcse-after-reload -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv"
GENTOO_MIRRORS="http://gentoo.inode.at ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo/  http://gentoo.osuosl.org http://mirror.phy.olemiss.edu/mirror/gentoo http://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="en en_GB en_US de"
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 --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/gnome-experimental"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext 7zip S3TC X a52 aac aalib acl acpi aiglx alsa amr aoss applet artworkextra async audiofile avahi bash-completion bcp berkdb bitmap-fonts bjam bonobo boo boost browserplugin bzip2 c++ cairo caps cddb cdr cli cluster cracklib crypt cscope css cups curl curlwrappers d daap dbus deprecated device-mapper dga dia disk-partition divx dmi dnd dpms dri dts dv dvb dvd dvdnav dvdr dvdread dvi dynamic eds effects elf emboss encode erandom evo evolution exif expat extraengine faad fat fbcon fbdev festival ffmpeg fftw flac fluidsynth fontconfig foomaticdb fortran fpx freetype ftp fuse galago gb gcc-libffi gconf gd gdbm gedit gif gimp gimpprint glade glib glibc-omitfp glut gmedia gnome gnomecanvas gnomedb gnustep gnutls grammar graphviz gs gsf gsnd gstreamer gtk gtk2 gtkhtml guile hal hbci hdri hfs iconv icu idn inkjar intl ipod ipv6 irda isdnlog java java5 javamail javascript jfs joystick jpeg jpeg2k jsch jta keyring kqemu lcd lcms ldap libcaca libedit libgda libnotify libsamplerate lirc log4j logrotate lzo lzw mad magic mailwrapper math matroska mbox md5sum mdb midi mikmod mixer mmap mmx mmxext mng mono mozbranding moznocompose moznoirc moznomail mozsvg mp2 mp3 mp4 mp4live mpeg mpeg2 mpi mplayer mpm-prefork mpm-threadpool mpm-worker mudflap musepack musicbrainz mythtv native nautilus ncurses net network network-cron networking nls no-old-linux no-seamonkey nodod nogecko-sdk nomalloccheck nomotif notfc nptl nptlonly nsplugin ntfs nvidia oav objc objc++ odk offensive ofx ogg ole openal opengl openmp oss pam pam_chroot pam_console pam_timestamp pch pcre pdf perl pic plugin plugins png pnm posix postgres postscript pppd pthreads pulseaudio pyste python qt-static quicktime quotes radeon radio rar readline real realmedia reflection regex regexp reiser4 reiserfs rtc samba sasl session slang slp sndfile snmp soap socks5 speex spell spl sql sqlite sqlite3 srt sse ssl startup-notification stencil-buffer svg t1lib tagwriting tcpd teletext tetex theora thesaurus threads threadsafe tiff timidity tk toolkit-scroll-bars tracker truetype truetype-fonts type1 type1-fonts unicode usb userlocales utf8 v4l v4l2 vdr vidix virus-scan vnc vorbis vorbis-psy wideband win32codecs wma wmf wmp wordperfect wxwindows x264 x86 xattr xcb xerces xforms xfs xml xorg xosd xpm xprint xrandr xscreensaver xulrunner xv xvid xvmc yv12 zlib zvbi" ALSA_CARDS="loopback mpu401 seq-dummy usb-audio via82xx virmidi" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="dmc evdev joystick keyboard mouse void" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB en_US de" LIRC_DEVICES="devinput" USERLAND="GNU" VIDEO_CARDS="dummy fbdev nv nvidia v4l vesa vga none"
Unset:  CTARGET, INSTALL_MASK, LC_ALL, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Florian Scandella 2007-09-21 03:10:53 UTC
it seems bug-buddy 2.20.0 is causing the problem, as uninstalling it fixes it (a warning about loading gnomebreakpad appears, but the appps work). i'll try with 2.18.1 later ..
Comment 2 Florian Scandella 2007-09-21 14:51:21 UTC
bug-buddy-2.18.1 works (it doesn't come with breakpad), so i guess there's an fault in google breakpad included in the new bug-buddy.

maybe someone could reassign this to the gnome team?
Comment 3 Mike Auty (RETIRED) gentoo-dev 2007-09-23 13:52:45 UTC
Thanks for the pointer from the gnome bug, this is *exactly* what I've been experiencing.  Have you filed a bug upstream yet?

Also, I found the attachment to this bug:

http://bugzilla.gnome.org/show_bug.cgi?id=479507

Which I'm going to apply locally and test out.  It should hopefully tell us whether it's breakpad in particular causing the problem, or something else in bug buddy...
Comment 4 Mike Auty (RETIRED) gentoo-dev 2007-09-23 14:09:34 UTC
Interestingly, I disabled the google-breakpad and the issue still occurred, so it appears it's built into the changes that went into bug-buddy-2.20.0.  I'm gonna do some more digging and see if I can isolate the issue a bit better.  I'll attach the ebuild for disabling googles-breakpad, in case it's of interest.
Comment 5 Mike Auty (RETIRED) gentoo-dev 2007-09-23 14:11:26 UTC
Created attachment 131702 [details]
bug-buddy-2.20.0.ebuild - applies patch and adds USE flag

This also requires the patch from the gnome bug mentioned above to be added to ${FILESDIR}/bug-buddy-2.20.0-no-breakpad.patch
Comment 6 Florian Scandella 2007-09-23 14:27:11 UTC
(In reply to comment #3)
> Thanks for the pointer from the gnome bug, this is *exactly* what I've been
> experiencing.  Have you filed a bug upstream yet?

no, i didn't. i was not sure where to file it (breakpad vs bug-buddy) and i was afraid it had something to do with my toolchain (gcc,glibc,cflags,...)
Comment 7 Mike Auty (RETIRED) gentoo-dev 2007-09-23 14:42:03 UTC
Ok, after reading some *very* interesting information over on the opensolaris bugs page:

http://bugs.opensolaris.org/view_bug.do?bug_id=6600538

it seems to explain a bit about what's going on.  Luckily it suggests a workaround.  Unfortunately their workaround doesn't work.  Happily, it gives enough information to figure out a different workaround.  5:)

For any apps that appear to be breaking because of breakpad, it's possible to start the app as long as the GTK_MODULES environment variable doesn't contain gnomebreakpad.

This should probably be assigned to bug-buddy directly upstream with references to our bug and the opensolaris one (and it doesn't appear it's a toolchain issue)  5;)

Thanks again for pointing this out to me, I can now at least still use eclipse!
Comment 8 Mike Auty (RETIRED) gentoo-dev 2007-09-24 18:53:25 UTC
Just to keep everybody on track, the upstream bug is Bug 479929.

It can be found at:

http://bugzilla.gnome.org/show_bug.cgi?id=479929
Comment 9 Mart Raudsepp gentoo-dev 2007-09-24 21:25:19 UTC
(In reply to comment #0)
> i'm running gentoo unstable + gnome-overlay. i've applied the upstream tooltips
> patch to gtk.

I _think_ this references the patch at http://bugzilla.gnome.org/show_bug.cgi?id=460194 which I have now included in gtk+-2.12.0-r1.

I personally had no plans to put bug-buddy-2.20 into portage tree until google-breakpad can be fully disabled and the work for all that has no ill side effects, plus debian has raised some licensing concerns. Breakpad as is is completely useless to us due to debug binaries being completely impossible to be created for breakpad/socorro to use together with the minidumps due to the nature of Gentoo Linux package system. I had some chats on this with the bug-buddy developers but I'll need to poke them again with my ideas on how to approach systems like Gentoo with this new infrastructure.

The idea was to basically something like this:
Socorro(?) infrastructure upstream receives minidumps from users and then processes them with debug packages and goes from there with automatic classification and duplication tracking and so on. As it was with 2.18, the bug reports get reported to upstream bugzilla and the automatic duplication and other check system wouldn't be deployed. So the idea is to basically do the step of combining minidump with debug packages at the users system and send the results of THAT for automated duplication classification and other steps; so as the next step after minidump is the one that we can't do due to everyones packages being different (CFLAGS, et cetera), we could do that step on the users machine instead and send those results as input to the step after that in upstream infrastructure.
Comment 10 Mike Auty (RETIRED) gentoo-dev 2007-09-24 21:34:18 UTC
Mart, I've been using the no-google-breakpad patch (linked in comment 3) with the ebuild attached in comment 5 without problem now for a couple of days, so that should be a problem, most of the work's already been done.  Also, Fernando just added a patch to this problem in the gnome bug (added to the URL field).  It works fine, as long as google-breakpad is turned off...
Comment 11 Florian Scandella 2007-09-25 01:54:39 UTC
(In reply to comment #9)
> (In reply to comment #0)
> > i'm running gentoo unstable + gnome-overlay. i've applied the upstream tooltips
> > patch to gtk.
> 
> I _think_ this references the patch at
> http://bugzilla.gnome.org/show_bug.cgi?id=460194 which I have now included in
> gtk+-2.12.0-r1.
> 

yes, thats the one.

> ..other check system wouldn't be deployed. So the idea is to basically do the
> step of combining minidump with debug packages at the users system and send the
> results of THAT for automated duplication classification and other steps; so as
> the next step after minidump is the one that we can't do due to everyones
> packages being different (CFLAGS, et cetera), we could do that step on the
> users machine instead and send those results as input to the step after that in
> upstream infrastructure.
> 

don't you need the debug builds (or unstripped binaries) to do this?

Comment 12 Mart Raudsepp gentoo-dev 2007-09-25 08:19:00 UTC
(In reply to comment #11)
> > ..other check system wouldn't be deployed. So the idea is to basically do the
> > step of combining minidump with debug packages at the users system and send the
> > results of THAT for automated duplication classification and other steps; so as
> > the next step after minidump is the one that we can't do due to everyones
> > packages being different (CFLAGS, et cetera), we could do that step on the
> > users machine instead and send those results as input to the step after that in
> > upstream infrastructure.
> > 
> 
> don't you need the debug builds (or unstripped binaries) to do this?
> 

Yes. It should employ similar throw-away rules as in socorro. Not enough debug symbols means throw away the report and possibly notify user to get them with CFLAGS="${CFLAGS} -g" FEATURES=splitdebug if he wants to help further. Bugs without any information getting filed to upstream bugzilla right now with 2.18 only the be marked INCOMPLETE isn't helping anyone. There of course needs some coordination with upstream how they want it for statistics - do they want to know that a crash happened without a good backtrace to keep track of overall count statistics or not, etc.
As a side note I'm not even sure something like this isn't already implemented, but I haven't read anything anywhere yet about it (I'm still on 2.18 myself, gradually going towards 2.20)
Our debug reports can and are most valueable in the case all of the debug stuff is set up fully - now if we could just filter out the useless ones with this infrastructure.
The whole system compiled with -g in CFLAGS and FEATURES="${FEATURES} splitdebug installsources" really does give very full reports - with installsources (requires debugedit package) often better than any other distribution with debug packages.
Comment 13 Florian Scandella 2007-09-25 12:49:30 UTC
ah .. i didn't know about the splitdebug feature, thats really nice ... but installing the sources for every package sounds like doubling (or trippling?) the hd requirements of my gentoo system.
Comment 14 Mike Auty (RETIRED) gentoo-dev 2007-09-26 08:23:58 UTC
There's now a set of patches to solve this for the case where another program installs it's own sighandler (both with and without google-breakpad), and it's been checked in upstream.  They can be found at:

http://svn.gnome.org/viewcvs/bug-buddy/trunk/gnome-breakpad/gnome-breakpad.cc?view=patch&r1=2340&r2=2431&pathrev=2436
http://svn.gnome.org/viewcvs/bug-buddy/trunk/gnome-breakpad/gnome-breakpad.cc?view=patch&r1=2436&r2=2435&pathrev=2436

The second patch corrects a failing in the first patch which stops it compiling under gcc-4.2...
Comment 15 Florian Scandella 2007-09-26 09:26:28 UTC
i can confirm the patches fix the problem, the second patch is also needed for gcc-4.1.
hmm .. looking at the code, i realize there would have been a simple solution to disable signal hooking with the environment varible "GNOME_DISABLE_CRASH_DIALOG"
Comment 16 Christian Häßler 2007-09-26 09:54:06 UTC
*** Bug 193756 has been marked as a duplicate of this bug. ***
Comment 17 Daniel Gryniewicz (RETIRED) gentoo-dev 2007-10-02 15:40:36 UTC
I've added the patches from comment #14 to bug-buddy-2.20.0-r1.  I didn't have any crashes before; can someone confirm that these fix the issue?
Comment 18 Florian Scandella 2007-10-04 13:38:40 UTC
bug-buddy-2.20.0-r1 works for me.
Comment 19 Christian Häßler 2007-10-05 18:26:32 UTC
works for me too
Comment 20 Daniel Gryniewicz (RETIRED) gentoo-dev 2007-10-22 17:25:30 UTC
Fixed, then.  Thanks.