When is a tid a lwp and vice versa?
Kevin Buettner
kevinb@cygnus.com
Tue Jul 3 10:52:00 GMT 2001
On Jun 29, 10:52am, John Hughes wrote:
> I'm playing with the 20010627 snapshot on a UnixWare system.
> Work's ok but when debugging non-threaded programs I get lots
> of "warning: procfs: resume can't find thread 1 -- resuming all."
> messages.
>
> This is 'cos the single entry in procinfo_list has pi->tid set
> to 0, but procfs_resume is calling find_procinfo with
> TIDGET(inferior_ptid), which returns the lwpid, which is 1
> not zero.
>
> Any ideas?
For UnixWare, it is important to understand that the ``tid'' member of
a ptid_t is used as a flag to indicate whether or not the composite
id represents a user-space thread id or an lwp id. (1 for the former;
0 for the latter.)
When I first read your message, it seemed to me that perhaps some code
somewhere was getting these confused. I've looked over
config/i386/tm-i386v42mp.h but don't see a problem though.
Anyway... it would be a tremendous help if you could figure out why
(and how) the lwp component of inferior_ptid is getting set to 1.
Also, it would be useful to know what the tid value is in this
circumstance.
Kevin
More information about the Gdb
mailing list