[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20060725115004.a6c668ca.kamezawa.hiroyu@jp.fujitsu.com>
Date: Tue, 25 Jul 2006 11:50:04 +0900
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To: Andrew Morton <akpm@...l.org>
Cc: pj@....com, linux-kernel@...r.kernel.org, ebiederm@...ssion.com
Subject: Re: [RFC] ps command race fix
On Mon, 24 Jul 2006 19:33:18 -0700
Andrew Morton <akpm@...l.org> wrote:
> On Tue, 25 Jul 2006 11:08:35 +0900
> KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com> wrote:
>
> > > Then the seek and read and such semantics are nice and stable and
> > > simple.
> > >
> > yes...
> > I think snapshot at open() is okay.
>
> We cannot do a single kmalloc() like cpuset does.
>
> The kernel presently kind-of guarantees that a 32k kmalloc() will work,
> although the VM might have to do very large amounts of work to achieve it.
>
> But 32k is only 8192 processes, so a snapshot will need multiple
> allocations and a list and trouble dropping and retaking tasklist_lock to
> allocate memory and keeping things stable while doing that. I suspect
> it'll end up ugly.
>
Hm, how about using bitmap instead of table ? (we'll have many holes but...)
Implementing
- sytem-wide bitmap of used tgid which is updated only when /proc is opened
seems not to be much problem. 32k kmalloc can store 256k pids.
BTW, how large pids and how many proccess in a (heavy and big) system ?
-Kame
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists