threads/1983: Couldn't get registers: No such process.

arsundar@npd.hcltech.com arsundar@npd.hcltech.com
Fri Aug 5 11:58:00 GMT 2005


>Number:         1983
>Category:       threads
>Synopsis:       Couldn't get registers: No such process.
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Wed Aug 03 11:58:00 UTC 2005
>Closed-Date:
>Last-Modified:
>Originator:     arsundar@npd.hcltech.com
>Release:        GNU gdb Red Hat Linux (5.3post-0.20021129.18rh)
>Organization:
>Environment:
Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:18:24 EST 2003 i686 athlon i386 GNU/Linux
>Description:
I am using gdb for debugging multithreaded application. The following are versions of gdb , gcc and glibc

gdb --version
GNU gdb Red Hat Linux (5.3post-0.20021129.18rh)
Copyright 2003 Free Software Foundation, Inc.

gcc --version
gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
Copyright (C) 2002 Free Software Foundation, Inc.

/lib/libc.so.6 --version
GNU C Library stable release version 2.3.2, by Roland McGrath et al.
Copyright (C) 2003 Free Software Foundation, Inc.

    The multithread application is running properly without gdb. But if I use gdb it is crasing and I couldn't get the stack trace. When I use "bt" it is showing the following error message.

Couldn't get registers: No such process.
(gdb) bt
Cannot fetch general-purpose registers for thread 1084431552: generic error
(gdb) info thread
Cannot find new threads: generic error
Please help in debugging this issue.

I have obtained the stack trace using libnjamd. The stack trace shows some access violation fault in gdb.

Segmentation fault (caught by NJAMD)
        called from gdb[0x811b9c3]
        called from gdb(wait_for_inferior+0x10e)[0x80b65be]
        called from gdb(proceed+0xc6)[0x80b6316]
        called from gdb(find_default_create_inferior+0x2c)[0x80e84dc]
        called from gdb[0x80b2dda]
        called from gdb(vfprintf+0x2d2d)[0x80759d9]
        called from gdb(cmd_func+0x2c)[0x807783c]
        called from gdb(execute_command+0x1f5)[0x8104225]
        called from gdb[0x80c1621]
        called from gdb[0x80c1a4d]
        called from gdb(rl_callback_read_char+0x55)[0x81b42b5]
        called from gdb[0x80c0f8b]
        called from gdb(stdin_event_handler+0x5a)[0x80c151a]
        called from gdb[0x80c080e]
        called from gdb[0x80c02b7]
        called from gdb(gdb_do_one_event+0x38)[0x80c0318]
        called from gdb(do_catch_errors+0x11)[0x8103e61]
        called from gdb[0x8103d76]
        called from gdb(catch_errors+0x4a)[0x8103eba]
        called from gdb(start_event_loop+0x34)[0x80c0354]
        called from gdb(realpath+0x226)[0x8073472]
        called from gdb(do_catch_errors+0x11)[0x8103e61]
        called from gdb[0x8103d76]
        called from gdb(catch_errors+0x4a)[0x8103eba]
        called from gdb(vfprintf+0x1288)[0x8073f34]
        called from gdb(do_catch_errors+0x11)[0x8103e61]
        called from gdb[0x8103d76]
        called from gdb(catch_errors+0x4a)[0x8103eba]
        called from gdb(gdb_main+0x31)[0x80740d1]
        called from gdb(main+0x27)[0x8073417]
        called from /lib/tls/libc.so.6(__libc_start_main+0xe4)[0x42015574]
        called from gdb(dlopen+0x45)[0x8073361]

Cause of fault: Access to protected region
Address of fault is 0x43757fe8

0x43757000-0x43759000: Aligned len 40
   Allocation callstack:
        called from gdb(xmmalloc+0x2f)[0x8106f6f]
        called from gdb(xmalloc+0x19)[0x8107079]
        called from gdb[0x80d835f]
   Freed callstack:
        called from gdb(xfree+0x19)[0x81070f9]
        called from gdb[0x80daee7]
        called from gdb[0x811b9c3]

Thanks,
Arud selvan.S.


>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the Gdb-prs mailing list