| Summary: | sci-physics/root-5.32.01-r2 segv due to libAfterImage | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Davide <sbdmmg> |
| Component: | Current packages | Assignee: | Andrew Savchenko <bircoph> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | bircoph, hypnos75, sbdmmg, sci-physics |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
| URL: | http://forums.gentoo.org/viewtopic-t-917098.html | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
emerge --info
gdb output gdb output (both root and libasimage having debug symbols) package.use package.keywords stack trace with root-5.32.02 (science overlay) |
||
|
Description
Davide
2012-03-20 10:22:59 UTC
$ 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 |