Re: [patch] lockless, scalable get_pid(), for_each_process() elimination, 2.5.35-BK

From: William Lee Irwin III (
Date: Wed Sep 18 2002 - 09:28:23 EST

On Wed, Sep 18, 2002 at 12:11:30PM +0200, Ingo Molnar wrote:
> so i think the most we could get is to actually eliminate the pidhash and
> use the idtag hash for it. This would concentrate all the performance
> efforts on the idtag hash.

I eventually had special-case handling of IDTAG_PID so that it did not
use idtags, but chained tasks directly, and removing the pidhash as goals.

On Wed, Sep 18, 2002 at 12:11:30PM +0200, Ingo Molnar wrote:
> another, locking improvement is possible as well:
> - the idtag spinlock should be eliminated, we can reuse the tasklist lock
> for it - in the exit and fork path we hold it already. This also means
> we can walk an ID list by read-locking the tasklist lock.
> the idtag spinlock is already superfluous i think, because the idtag task
> list is only safely walked if we read-lock the task list. So it's not like
> anyone could hash in a new idtag while we walk the list.
> What do you think?

ISTR the idtag_lock was for cases where the hashtable was modified
while the tasklist_lock was only held for reading. Basically, once
those are resolved, the idtag_lock goes away.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Mon Sep 23 2002 - 22:00:22 EST