struct thread
John Baldwin
jhb at FreeBSD.org
Wed Apr 16 11:06:25 PDT 2003
On 16-Apr-2003 Julian Elischer wrote:
>
>
> On Wed, 16 Apr 2003, Jeff Roberson wrote:
>
>> Is td_last_kse necessary? What about td_lastcpu? They don't really seem
>> to be used.
> td_last_kse and td_last_cpu were used in some experimental cpu affinity
> code that I gave up on (i.e. ran out of time).
> The idea was that the system would attempt to first schedule
> the thread on teh cpu it was last on , and if not available, on teh kse
> that it last ran on. I never removed the items but was hoping that
> someone, seeing the names there would feel tempted to
> implement affinity.. (Alfred mumbled about trying it).
kg_slpq isn't used either.
>>
>> Also, td_locks is unused, although it would be nice to have it
>> implemented.
>
> I think ithis is a jhb field
It used to be p_locks in struct proc used in the lockmgr code as the
comment indicates and predates both SMPng and KSE:
short td_locks; /* (k) DEBUG: lockmgr count of locks */
I have no attachment to it and it doesn't seem to be used anymore.
>> td_sleeplocks should be ifdefed with WITNESS.
>
> ditto
Is struct thread's size and layout part of the ABI as struct proc's is?
I think it effectively is since libkvm is going to want to examine thread
structures, so I'm afraid a variant sized struct thread would be a bad
thing. Other than that, td_sleeplocks could be #ifdef WITNESS.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
More information about the freebsd-threads
mailing list