multithreaded programs on arm-linux
Frank Meerkoetter
frank@betaversion.net
Thu Nov 3 16:28:00 GMT 2005
Quoting Daniel Jacobowitz <drow@false.org>:
> On Thu, Nov 03, 2005 at 04:51:07PM +0100, Frank Meerkoetter wrote:
>> >You'll need to attach a debugger to gdb and look at thread_db_init.
>> >The first call will generally fail but a later one should succeed.
>>
>> frank@linux:~/gdb/gdb-6.3> global thread_db_init
>> gdb/gdbserver/thread-db.c
>> gdb/thread-db.c
>>
>> thread_db_init of the gdbserver could fail but not thread_db_init
>> of the gdb.
>
> Try thread_db_new_objfile.
thread_db_new_objfile() is called two times.
On the first run it prints the library name and
than branches on the falg using_thread_db
to the label quit.
There it returns without executing target_new_objfile_chain (objfile).
The second time the same path is followed but without branching into
the block protected by the flag dejavu.
In neither cases is this line executed:
/* Now attempt to open a connection to the thread library. */
err = td_ta_new_p (&proc_handle, &thread_agent);
Regards,
Frank
More information about the Gdb
mailing list