This crash appears in the most recent version of root for ~x86 (5.32.01-r2). It seems to be related to the fact that root is shipping its own version of libafterimage. I tried to emerge root using x11-wm/afterstep-2.2.9 rather than libafterimage, but in that case root does not compile (see thread above for details). If I compile without portage (i.e. ./configure && make && make install) the same version of root on the same system, root does not crash. Reproducible: Always Steps to Reproduce: 1.emerge root-5.32.01-r2 2. root -l 3. root [0] TBrowser b Actual Results: Warning in <TASImage::GetMask>: No image ... *** Break *** segmentation violation Expected Results: pop up an image (TBrowser window) # emerge --info Portage 2.1.10.44 (default/linux/x86/10.0, gcc-4.5.3, glibc-2.13-r4, 3.1.6-gentoo i686) ================================================================= System uname: Linux-3.1.6-gentoo-i686-Intel-R-_Core-TM-_i5-2520M_CPU_@_2.50GHz-with-gentoo-2.0.3 Timestamp of tree: Sat, 17 Mar 2012 12:45:01 +0000 app-shells/bash: 4.2_p20 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.2-r3, 3.1.4-r3, 3.2.2 dev-util/cmake: 2.8.6-r4 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.0.3 sys-apps/openrc: 0.9.8.4 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.9.6-r3, 1.11.1 sys-devel/binutils: 2.21.1-r1 sys-devel/gcc: 4.5.3-r2 sys-devel/gcc-config: 1.5-r2 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r1 sys-kernel/linux-headers: 3.1 (virtual/os-headers) sys-libs/glibc: 2.13-r4 Repositories: gentoo zugaina dev-zero x-portage ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /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/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="-O2 -march=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://mirror.mcs.anl.gov/pub/gentoo/ rsync://mirror.mcs.anl.gov/gentoo/ ftp://mirror.mcs.anl.gov/pub/gentoo/" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/zugaina /var/lib/layman/dev-zero /usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa berkdb bzip2 cdr cli consolekit cracklib crypt cups cxx dbus divx dri dvd flac fortran gdbm gif gpm iconv id3 ipv6 kde lame midi modules mp3 mp4 mplayer mudflap ncurses nls nptl nptlonly ogg opengl openmp pam pcre policykit pppd qt3support qt4 readline realmedia session ssl svg sysfs tcpd udev unicode v4l v4l2 video webkit wmp x86 xorg 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 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 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" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" 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, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
$ root -l root [0] TBrowser bb Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image Warning in <TASImage::GetMask>: No image *** Break *** segmentation violation =========================================================== There was a crash. This is the entire stack trace of all threads: =========================================================== #0 0xb77d7424 in __kernel_vsyscall () #1 0xb6e44353 in waitpid () from /lib/libc.so.6 #2 0xb6de3d23 in ?? () from /lib/libc.so.6 #3 0xb6f1679d in system () from /lib/libpthread.so.0 #4 0xb724e63d in TUnixSystem::Exec(char const*) () from /usr/lib/root/libCore.so.5.32 #5 0xb72525b8 in TUnixSystem::StackTrace() () from /usr/lib/root/libCore.so.5.32 #6 0xb7254a8f in TUnixSystem::DispatchSignals(ESignals) () from /usr/lib/root/libCore.so.5.32 #7 0xb7254b9d in ?? () from /usr/lib/root/libCore.so.5.32 #8 0xb724c7b2 in ?? () from /usr/lib/root/libCore.so.5.32 #9 0xb727a29f in textinput::TerminalConfigUnix::HandleSignal(int) () from /usr/lib/root/libCore.so.5.32 #10 0xb727a2f6 in ?? () from /usr/lib/root/libCore.so.5.32 #11 <signal handler called> #12 0xb4f01685 in asimage_add_line_mono () from /usr/lib/libAfterImage.so.0 #13 0xb4f2554e in encode_image_scanline_asim () from /usr/lib/libAfterImage.so.0 #14 0xb4f233c0 in output_image_line_direct () from /usr/lib/libAfterImage.so.0 #15 0xb4f38d9b in fill_asimage () from /usr/lib/libAfterImage.so.0 #16 0xb4f8949f in TASImage::FillRectangleInternal(unsigned int, int, int, unsigned int, unsigned int) () from /usr/lib/root/libASImage.so #17 0xb4f89625 in TASImage::FillRectangle(char const*, int, int, unsigned int, unsigned int) () from /usr/lib/root/libASImage.so #18 0xb51acafe in TGPictureButton::CreateDisabledPicture() () from /usr/lib/root/libGui.so #19 0xb51ae684 in TGPictureButton::DoRedraw() () from /usr/lib/root/libGui.so #20 0xb51a986c in TGButton::SetState(EButtonState, bool) () from /usr/lib/root/libGui.so #21 0xb521f2b8 in TGTextEditor::Build() () from /usr/lib/root/libGui.so #22 0xb5220968 in TGTextEditor::TGTextEditor(char const*, TGWindow const*, unsigned int, unsigned int) () from /usr/lib/root/libGui.so #23 0xb55018f2 in ?? () from /usr/lib/root/libGui.so #24 0xb6802957 in Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) () from /usr/lib/root/libCint.so.5.32 #25 0xb680499f in G__execute_call () from /usr/lib/root/libCint.so.5.32 #26 0xb6804d82 in G__call_cppfunc () from /usr/lib/root/libCint.so.5.32 #27 0xb67eb241 in G__interpret_func () from /usr/lib/root/libCint.so.5.32 #28 0xb684561e in G__getfunction () from /usr/lib/root/libCint.so.5.32 #29 0xb67ad648 in G__new_operator () from /usr/lib/root/libCint.so.5.32 #30 0xb688c55b in G__exec_statement () from /usr/lib/root/libCint.so.5.32 #31 0xb67b9fae in ?? () from /usr/lib/root/libCint.so.5.32 #32 0xb67bb6c9 in G__exec_tempfile_fp () from /usr/lib/root/libCint.so.5.32 #33 0xb6895f41 in G__process_cmd () from /usr/lib/root/libCint.so.5.32 #34 0xb721f683 in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) () from /usr/lib/root/libCore.so.5.32 #35 0xb71eb5b1 in TApplication::ProcessLine(char const*, bool, int*) () from /usr/lib/root/libCore.so.5.32 #36 0xb71914b2 in TROOT::ProcessLine(char const*, int*) () from /usr/lib/root/libCore.so.5.32 #37 0xb51bad61 in TRootBrowser::ExecPlugin(char const*, char const*, char const*, int, int) () from /usr/lib/root/libGui.so #38 0xb51bb9d4 in TRootBrowser::InitPlugins(char const*) () from /usr/lib/root/libGui.so #39 0xb51bc12d in TRootBrowser::TRootBrowser(TBrowser*, char const*, unsigned int, unsigned int, char const*, bool) () from /usr/lib/root/libGui.so #40 0xb51bd2a4 in TRootBrowser::NewBrowser(TBrowser*, char const*, unsigned int, unsigned int, char const*) () from /usr/lib/root/libGui.so #41 0xb5523288 in ?? () from /usr/lib/root/libGui.so #42 0xb68310c8 in Cint::G__CallFunc::Execute(void*) () from /usr/lib/root/libCint.so.5.32 #43 0xb721698b in TCint::CallFunc_ExecInt(void*, void*) const () from /usr/lib/root/libCore.so.5.32 #44 0xb7213a93 in TMethodCall::Execute(void*, long&) () from /usr/lib/root/libCore.so.5.32 #45 0xb7195c77 in TPluginHandler::ExecPlugin(int, ...) () from /usr/lib/root/libCore.so.5.32 #46 0xb51bd7d2 in TRootGuiFactory::CreateBrowserImp(TBrowser*, char const*, unsigned int, unsigned int, char const*) () from /usr/lib/root/libGui.so #47 0xb71df8c8 in TBrowser::TBrowser(char const*, char const*, TBrowserImp*, char const*) () from /usr/lib/root/libCore.so.5.32 #48 0xb72a8d00 in ?? () from /usr/lib/root/libCore.so.5.32 #49 0xb6802957 in Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) () from /usr/lib/root/libCint.so.5.32 #50 0xb680499f in G__execute_call () from /usr/lib/root/libCint.so.5.32 #51 0xb6804d82 in G__call_cppfunc () from /usr/lib/root/libCint.so.5.32 #52 0xb67eb241 in G__interpret_func () from /usr/lib/root/libCint.so.5.32 #53 0xb684561e in G__getfunction () from /usr/lib/root/libCint.so.5.32 #54 0xb68a82d5 in G__define_var () from /usr/lib/root/libCint.so.5.32 #55 0xb6886b46 in G__exec_statement () from /usr/lib/root/libCint.so.5.32 #56 0xb67b9fae in ?? () from /usr/lib/root/libCint.so.5.32 #57 0xb67bb6c9 in G__exec_tempfile_fp () from /usr/lib/root/libCint.so.5.32 #58 0xb6895f41 in G__process_cmd () from /usr/lib/root/libCint.so.5.32 #59 0xb721f683 in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) () from /usr/lib/root/libCore.so.5.32 #60 0xb71eb5b1 in TApplication::ProcessLine(char const*, bool, int*) () from /usr/lib/root/libCore.so.5.32 #61 0xb7049b12 in TRint::HandleTermInput() () from /usr/lib/root/libRint.so.5.32 #62 0xb7049565 in TTermInputHandler::Notify() () from /usr/lib/root/libRint.so.5.32 #63 0xb704bb04 in TTermInputHandler::ReadNotify() () from /usr/lib/root/libRint.so.5.32 #64 0xb7253cd3 in TUnixSystem::CheckDescriptors() () from /usr/lib/root/libCore.so.5.32 #65 0xb72553aa in TUnixSystem::DispatchOneEvent(bool) () from /usr/lib/root/libCore.so.5.32 #66 0xb71bfe24 in TSystem::InnerLoop() () from /usr/lib/root/libCore.so.5.32 #67 0xb71c2ab9 in TSystem::Run() () from /usr/lib/root/libCore.so.5.32 #68 0xb71e9547 in TApplication::Run(bool) () from /usr/lib/root/libCore.so.5.32 #69 0xb704a623 in TRint::Run(bool) () from /usr/lib/root/libRint.so.5.32 #70 0x08048faf in main () =========================================================== The lines below might hint at the cause of the crash. If they do not help you then please submit a bug report at http://root.cern.ch/bugs. Please post the ENTIRE stack trace from above as an attachment in addition to anything else that might help us fixing this issue. =========================================================== #12 0xb4f01685 in asimage_add_line_mono () from /usr/lib/libAfterImage.so.0 #13 0xb4f2554e in encode_image_scanline_asim () from /usr/lib/libAfterImage.so.0 #14 0xb4f233c0 in output_image_line_direct () from /usr/lib/libAfterImage.so.0 #15 0xb4f38d9b in fill_asimage () from /usr/lib/libAfterImage.so.0 #16 0xb4f8949f in TASImage::FillRectangleInternal(unsigned int, int, int, unsigned int, unsigned int) () from /usr/lib/root/libASImage.so #17 0xb4f89625 in TASImage::FillRectangle(char const*, int, int, unsigned int, unsigned int) () from /usr/lib/root/libASImage.so #18 0xb51acafe in TGPictureButton::CreateDisabledPicture() () from /usr/lib/root/libGui.so #19 0xb51ae684 in TGPictureButton::DoRedraw() () from /usr/lib/root/libGui.so #20 0xb51a986c in TGButton::SetState(EButtonState, bool) () from /usr/lib/root/libGui.so #21 0xb521f2b8 in TGTextEditor::Build() () from /usr/lib/root/libGui.so #22 0xb5220968 in TGTextEditor::TGTextEditor(char const*, TGWindow const*, unsigned int, unsigned int) () from /usr/lib/root/libGui.so #23 0xb55018f2 in ?? () from /usr/lib/root/libGui.so =========================================================== Root >
Hello, 1) Please rebuild root with debug info and provide full crash output here. You should add "-ggdb" to your *FLAGS and use FEATURES="splitdebug" during build. 2) Please provide all data including your emerge --info here, not at forums or elsewhere third-party. 3) If you have problems building with recent afterstep, please open a separate bug for an issue and supplement that bug with all required data. 4) ROOT usually uses trunk version of libafterimage, so problem with old afterstep/afterimage versions is not a valid bug. You even mangled ebuild deps to obtain for that. 5) When you build ROOT with ./configure && make && make install, it just uses bundled libafterimage version which is often just a snapshot of libafterimage svn trunk for the moment root was prepared for release. With current available data I can't reproduce your crash nor understand what is going wrong. Please provide sufficient debug info as described in paragraph 1). Does this crash always occur when you create TBrowser instance or some special requirements have to be met?
Created attachment 307319 [details] emerge --info
Created attachment 307321 [details] gdb output
Hello, Thanks for your message and apologies for this late reply. I managed to re-compile root with debug symbols, and I am attaching the backtrace. I am also re-attaching the output of 'emerge --info'. This crash always occurs when I create a new TBrowser instance (without any special requirement). Thanks, davide
Hmm, your *FLAGS contain -O1, have you used this flags to build both libafterimage and root, or only root? If the latter is true, please build both packages with the same flags. P.S. I'm using the same libafterimage and root versions on two ~x86 boxes. I still can't reproduce this, though I use fine-tuned CFLAGS/CXXFLAGS.
Created attachment 307373 [details] gdb output (both root and libasimage having debug symbols) Hello, Please find attached the stack trace after re-compiling both root and libasimage with debug symbols. Thanks, davide
Created attachment 307387 [details] package.use Hello, I realized you mentioned testing this on 'two ~x86' boxes. I am currently using x86, and ~x86 only for a handful of packages (including root, see attached package.use). I can try to set ~x86 for libafterimage as well, but I believe that it won't change anything (I see that 1.20 is the only version reported here: http://packages.gentoo.org/package/media-libs/libafterimage). Thanks, davide
Created attachment 307391 [details] package.keywords
Hello, I bumped root to 5.32.02 version in the science overlay. Please try it, though changelog contains to evidence of this bug being fixed, it is still worth tryning. If it fails, then please resubmit debug info, afterwards I'll report this problem to the ROOT upstream. Of course, you may want to report yourself if you wish. Mixing stable and unstable packages may cause issues, though it is quite common and legal practice. I don't have any x86 stable to test, but something may be wrong with some old package on the system, may be not of course.
Hello, Thanks for your message, Andrew. I tried v5.32.02 from the science overlay, but unfortunately I still see the same crash. I am attaching the updated stack trace. Below is the command I used to re-emerge root, and the corresponding flags. # FEATURES="splitdebug" emerge -1av root media-libs/libafterimage --jobs 2 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-libs/libafterimage-1.20 USE="gif nls svg -examples -jpeg -mmx -png -static-libs -tiff -truetype" 0 kB [ebuild R ~] sci-physics/root-5.32.02::science USE="X doc examples math opengl openmp python qt4 reflex ssl -afs -avahi -clarens -emacs -fftw -fits -graphviz -kerberos -ldap -mpi -mysql -odbc -oracle -postgres (-prefix) -pythia6 -pythia8 -ruby -xft -xinetd -xml -xrootd" 0 kB I wonder whether anyone else using x86 + root~x86 can see the same problem, or if I have some conflict with my own USE flags (although they're quite simple ones...). Many thanks, davide
Created attachment 307565 [details] stack trace with root-5.32.02 (science overlay)
Thanks for updated data. I just noticed build flags you used for libafterimage, please try to build it with USE="gif jpeg png tiff". All of them except are unconditional requirements of root and all of them are enabled when internal root's afterimage is used (and you have no problems in the latter case).
Yes, I was able to reproduce crash with your flags with libafterimage. Will update deps soon.
I've updated ebuild to root-5.32.02-r1 in the science overlay. Please try out, this should fix your problem. Tested on ~x86 and ~amd64.
Hello Andrew, Thanks a ton! I emerged root-5.32.02-r1 and the crash is indeed gone :-) Thank you very much for fixing this! davide