Thread View: gnu.gdb.bug
1 messages
1 total messages
Started by Henry A Worth
Fri, 08 Jan 1993 00:07
gdb-4.7 dumps on nil textsection ptr (gcc2.3.3/solaris2/shared object)
Author: Henry A Worth
Date: Fri, 08 Jan 1993 00:07
Date: Fri, 08 Jan 1993 00:07
76 lines
3446 bytes
3446 bytes
gdb dumped (seg. excep) while trying to attach to a running process
(shared objects in use). The object included a shared object without a
text section which resulted in a nil ptr in the function symbol_add_stub()
in the gdb source file solib.c. gdb-4.7 and the objects were all compiled
with gcc-2.3.3 running under Solaris2.0.
gdb of gdb-4.7's core dump (same error also occurs in earlier gdb's):
(gdb) core core
Core was generated by `gdb-4.7 sm'.
Program terminated with signal 11, Segmentation fault.
#0 0x67028 in symbol_add_stub (arg=0x2f5208 "") at solib.c:674
674 so -> objfile = symbol_file_add (so -> so_name, so -> from_tty,
the full statement & function:
/* A small stub to get us past the arg-passing pinhole of catch_errors. */
static int
symbol_add_stub (arg)
char *arg;
{
register struct so_list *so = (struct so_list *) arg; /* catch_errs bogon */
so -> objfile = symbol_file_add (so -> so_name, so -> from_tty,
(unsigned int) so -> textsection -> addr,
note>> ^^^^^^^^^^^^^^^^^^^^^^^^^^
0, 0, 0);
return (1);
}
returning to gdb:
(gdb) p so
$1 = (struct so_list *) 0x2f5208
(gdb) p *so
$2 = {next = 0x0, lm = {l_addr = 4014080000,
l_name = 0xef7fa2e4<Address 0xef7fa2e4 out of bounds>,
l_ld = 0xef434494,
l_next = 0xef7fa3dc, l_prev = 0xef7fa254}, lmaddr = 0xef7fa31c,
lmend = 4014163092,
so_name = {"/xxxxx/xxxxx/xxxxx/xxxxx/xxxxx/xxx.so",
The source file (name changed to protect the guilty) contains a global
date table and no functions (same error also occurs if it is a .sa file).
It was compiled with gcc-2.3.3 with the options: -g -O2 -fno-inline -fpic.
'\000' <repeats 205 times>}, symbols_loaded = 0 '\000', from_tty = 0
'\000',
so_bfd = 0x321108, objfile = 0x0, sections = 0x25a908,
sections_end = 0x25a928, textsection = 0x0}
note>> ^^^^^^^^^^^^^^^^^
(gdb) bt
#0 0x67028 in symbol_add_stub (arg=0x2f5208 "") at solib.c:674
#1 0x213c8 in catch_errors (func=0x67008 <_initialize_exec+2120>,
args=0x2f5208 "",
errstring=0x140140 "Error while reading shared library symbols:\n")
at main.c:370
#2 0x67170 in solib_add (arg_string=0x0, from_tty=1, target=0x0)
at solib.c:728
#3 0x53904 in attach_command (args=0x18900f "6633", from_tty=1)
at infcmd.c:1083
#4 0x226c4 in execute_command (p=0x18900f "6633", from_tty=1) at
main.c:931
#5 0x22928 in command_loop () at main.c:990
#6 0x22410 in main (argc=2, argv=0xeffff794) at main.c:857
fix(?)/workaround:
Added check of so->textsection, if nil then pass a nil to symbol_file_add()
for the third argument.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads