Package: gdb Version: 7.4.1+dfsg-0.1 Severity: normal
Fri, 21 Jun 2013 12:02:46 +0200 by Hector Oron <hector.o...@gmail.com>: > > My instance if gdb IS in a cpu lock state and is > > inresponsive. I hope you can help me or point me the best place to > > ask for help. > > Please, send this information as a Debian bug report against gdb > package. <http://www.debian.org/Bugs/> > Thanks > > > This is the last output: > > > > Program received signal SIGINT, Interrupt. > > [Switching to Thread 0xb52ffb40 (LWP 11262)] > > 0xb7fde424 in __kernel_vsyscall () > > (gdb) s > > Single stepping until exit from function __kernel_vsyscall, > > which has no line number information. > > <hangs> > > > > Here is what I did. > > > > $ gdb attach 11199 > > < > > Attaching to process 11199 > > Reading symbols from /usr/bin/claws-mail...done. > > warning: Could not load shared library symbols for linux-gate.so.1. > > Do you need "set solib-search-path" or "set sysroot"? # <-- What > > does this mean? > > [....] > > > > Unfortunately I missed to strace -p 11199 before, now it is not > > permitted. > > > > I stepped through claws until it hung at some point. No cpu usage, > > just hangs, maybe waiting for some file descriptor or something. > > Then I pressed CTRL+C in the debug window of claws as you can see > > below and then gdb went into a cpulock condition. > > > > PID PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > > 14240 20 0 107m 44m 1196 R 89,8 8,9 6:56.62 gdb > > 14240 20 0 107m 41m 1196 R 85,5 8,3 13:38.45 gdb # some > > minutes later > > 14240 20 0 107m 12m 1152 R 62,3 2,4 52:21.20 gdb # now > > > > GDB output of claws-mail (11199) > > > > 0xb7fde424 in __kernel_vsyscall () > > (gdb) s > > Single stepping until exit from function __kernel_vsyscall, > > which has no line number information. > > s > > __lll_lock_wait_private () > > at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowle > > vellock.S:99 > > 99 ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowl > > evellock.S: Datei oder Verzeichnis nicht gefunden. > > (gdb) s > > 100 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 102 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 103 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 105 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 108 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 111 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 114 in ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/l > > owlevellock.S > > (gdb) s > > 0xb6e5352d in _L_lock_49 () > > from /lib/i386-linux-gnu/i686/cmov/libc.so.6 > > (gdb) s > > which has no line number information. > > __GI__IO_fputs (str=str@entry=0x85331a0 "undo.c:599:", > > fp=0xb6f98a20) at iofputs.c:40 > > 40 iofputs.c: Datei oder Verzeichnis nicht gefunden. > > (gdb) s > > 41 in iofputs.c > > (gdb) s > > at fileops.c:1290 > > 1290 fileops.c: Datei oder Verzeichnis nicht gefunden. > > (gdb) s > > 1297 in fileops.c > > (gdb) s > > 1290 in fileops.c > > (gdb) s 10 > > 1311 in fileops.c > > (gdb) s 10 > > 1311 in fileops.c > > (gdb) s 10 > > 1329 in fileops.c > > (gdb) s 10 > > 56 ../sysdeps/i386/i686/multiarch/../mempcpy.S: Datei oder > > Verzeichnis nicht gefunden. > > (gdb) s 10 > > 1337 fileops.c: Datei oder Verzeichnis nicht gefunden. > > (gdb) s 10 > > Single stepping until exit from function _L_unlock_129, > > which has no line number information. > > 344 ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowl > > evellock.S: Datei oder Verzeichnis nicht gefunden. > > (gdb) s 10 > > 0xb6e53539 in _L_unlock_129 () > > from /lib/i386-linux-gnu/i686/cmov/libc.so.6 > > (gdb) s > > Single stepping until exit from function _L_unlock_129, > > which has no line number information. > > __GI__IO_fputs (str=str@entry=0x85331a0 "undo.c:599:", > > fp=0xb6f98a20) at iofputs.c:45 > > 45 iofputs.c: Datei oder Verzeichnis nicht gefunden. > > (gdb) s > > g_print (format=0x8385863 "%s") > > at /build/glib2.0-Q0IaBZ/glib2.0-2.36.3/./glib/gmessages.c > > :1456 > > 1456 /build/glib2.0-Q0IaBZ/glib2.0-2.36.3/./glib/gmessages. > > c: Datei oder Verzeichnis nicht gefunden. > > (gdb) s > > Program received signal SIGINT, Interrupt. > > [Switching to Thread 0xb52ffb40 (LWP 11262)] > > 0xb7fde424 in __kernel_vsyscall () > > (gdb) s > > Single stepping until exit from function __kernel_vsyscall, > > which has no line number information. > > <hangs> > > > > As gdb consumes 99% cpu I attached to this instance (14240), found > > out, that many -dbg are missing, detached, installed them and > > attached again. As said at this time claws SIGINTed alread, which > > was not caught properly by gdb. > > > > There are still missing dbg packges for: > > libexpat1 /lib/i386-linux-gnu/libexpat.so.1 > > libc6 /lib/ld-linux.so.2 (libc6-dbg ist installed) > > > > GDB uses Expat, an XML parsing library, to implement some > > target-specific features. Expat will be linked in if it is > > available at build time, or those features will be disabled. The > > latest version of Expat should be available from > > `http://expat.sourceforge.net'. please provide a gdb-dbg package. As gdb uses libexpat1 also libexpat1-dbg would be great . > > #0 0xb7fde424 in __kernel_vsyscall () > > #1 0xb7acfc53 in ptrace (request=PTRACE_CONT) at > > ../sysdeps/unix/sysv/linux/ptrace.c:118 > > #2 0x080d23bf in ?? () > > #3 0x080d8470 in ?? () > > #4 0x080d8552 in ?? () > > #5 0x080d6eab in iterate_over_lwps () > > #6 0x080d8974 in ?? () > > #7 0x080d5662 in ?? () > > #8 0x081ec9b7 in target_resume () > > #9 0x081b2ffb in resume () > > #10 0x081b945e in ?? () > > #11 0x081b7907 in ?? () > > #12 0x081b42c6 in wait_for_inferior () > > #13 0x081b3805 in proceed () > > #14 0x081ad6c8 in ?? () > > #15 0x081ad359 in ?? () > > #16 0x081ad127 in ?? () > > #17 0x0810ad6b in ?? () > > #18 0x0810d597 in cmd_func () > > #19 0x0809754c in execute_command () > > #20 0x081cdf7a in ?? () > > #21 0x081ce4b8 in ?? () > > #22 0xb7fa86f5 in rl_callback_read_char () > > at > > ldd-readline6_6.2+dfsg-0.1-i386-AtYqj8/readline6-6.2+dfsg/callback.c:220 > > #23 0x081cdb2f in ?? () > > #24 0x081cde9f in stdin_event_handler () > > #25 0x081ccf67 in ?? () > > #26 0x081cc685 in ?? () > > #27 0x081cc74a in gdb_do_one_event () > > #28 0x081cc79c in start_event_loop () > > #29 0x081cdb58 in cli_command_loop () > > #30 0x081c7919 in current_interp_command_loop () > > #31 0x0808de97 in ?? () > > #32 0x081c71dd in catch_errors () > > #33 0x0808edf9 in ?? () > > #34 0x081c71dd iIn file included from i386-linux-nat.c:27:0: > > linux-nat.h:79:18: error: field ‘siginfo’ has incomplete type > > n catch_errors () > > #35 0x0808ee2f in gdb_main () > > #36 0x0808dc0b in main () > > > > To fill the holes I built it from source. > > > > $ apt-get source gdb=7.4.1+dfsg-0.1 > > E: Ignore unavailable version '7.4.1+dfsg-0.1' of package 'gdb' > > E: Unable to find a source package for gdb Is there anything wrong with the source package? > > Got 7.4.1 from ftp://sourceware.org/pub/gdb/releases/ then. > > Compilation run until: In file included from > > i386-linux-nat.c:27:0: linux-nat.h:79:18: error: field ‘siginfo’ > > has incomplete type > > > > In the code I found ^L several times and removed them, but that was > > not the point. > > https://bugs.archlinux.org/task/30657 came closer, without solution > > for this 'cosmetic error'. > > This changelog > > (http://people.redhat.com/anderson/crash.changelog.html) reported > > an error with glib glibc-2.15.9. I am using 2.36.3-1/i386. > > - Replace usage of "struct siginfo" with "siginfo_t". > > > > Ok, compiles. One step closer to paradise. > > I also tried 7.6 which is not the one of my installation.. > > As gdb has no -dbg package I compiled it from source and ignored > > the makeinfo error by make (shouldnt configure warn before?). I > > tried to disable doc creation, but it seems this is ignored as it > > does not complain confmake --disable-doc --disable-everything > > > > WARNING: `makeinfo' is missing on your system. You should only > > need it if you modified a `.texi' or `.texinfo' file, or any other > > file indirectly affecting the aspect of the manual. The spurious > > call might also be the consequence of using a buggy > > `make' (AIX, DU, IRIX). You might want to install the `Texinfo' > > package or the `GNU make' package. Grab either from any GNU > > archive site. make[3]: *** [bfd.info] Error 1 > > make[3]: Leaving directory `/home/kardan/build/gdb/bfd/doc' > > Making info in po > > make[3]: Entering directory `/home/kardan/build/gdb/bfd/po' > > make[3]: Nothing to be done for `info'. > > make[3]: Leaving directory `/home/kardan/build/gdb/bfd/po' > > make[3]: Entering directory `/home/kardan/build/gdb/bfd' > > make[3]: Nothing to be done for `info-am'. > > make[3]: Leaving directory `/home/kardan/build/gdb/bfd' > > make[2]: *** [info-recursive] Error 1 > > make[2]: Leaving directory `/home/kardan/build/gdb/bfd' > > make[1]: *** [all-bfd] Error 2 > > make[1]: Leaving directory `/home/kardan/build/gdb' > > make: *** [all] Error 2 +1 --disable-doc configure option Otherwise please add texinfo to configure checks. > > I attached to new compiled gdb ang got some warning. > > However I do not understand them yet. > > > > Setting up the environment for debugging gdb. > > During symbol reading, cannot get low and high bounds for > > subprogram DIE at 7850418. > > During symbol reading, Only single DW_OP_reg or DW_OP_fbreg is > > supported for DW_FORM_block* DW_AT_location is supported for > > DW_TAG_GNU_call_site child DIE 0x77d1e7 [in > > module /home/kardan/build/gdb/gdb/gdb]. During symbol reading, > > Child DIE 0x77f000 and its abstract origin 0x77c9b2 have different > > parents. During symbol reading, Child DIE 0x77f05e and its abstract > > origin 0x783d53 have different tags. > > During symbol reading, DW_AT_GNU_call_site_target target DIE has > > invalid low pc, for referencing DIE 0x77f648 [in > > module /home/kardan/build/gdb/gdb/gdb]. During symbol reading, > > Multiple children of DIE 0x77f9c8 refer to DIE 0x77cb5c as their > > abstract origin. Breakpoint 1 at 0x8237760: file utils.c, line 950. > > Breakpoint 2 at 0x80b2520: file ./cli/cli-cmds.c, line 221. > > warning: Could not load shared library symbols for linux-gate.so.1. Do you need "set solib-search-path" or "set sysroot"? I read that http://www.trilithium.com/johan/2005/08/linux-gate/ is purely virtual, so this message is confusing the user and should be ignored? Or explained as here http://lkml.org/lkml/2005/8/11/255 ,) > if the attached process dies, gdb shows this, but does not refuse to > continue (as it should). My findings for 7.6 as well was, that > continu is accepted and gdb just does nothing (no cpu loop). With my > limited knowledge there is no way to get out again. All the best, Kardan -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org