[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.1.10.0903131630530.1741@qirst.com>
Date: Fri, 13 Mar 2009 16:34:41 -0400 (EDT)
From: Christoph Lameter <cl@...ux-foundation.org>
To: David Rientjes <rientjes@...gle.com>
cc: Andrew Morton <akpm@...ux-foundation.org>,
Pekka Enberg <penberg@...helsinki.fi>,
Matt Mackall <mpm@...enic.com>,
Paul Menage <menage@...gle.com>,
Randy Dunlap <randy.dunlap@...cle.com>,
KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>,
linux-kernel@...r.kernel.org
Subject: Re: [patch -mm v2] cpusets: add memory_slab_hardwall flag
On Thu, 12 Mar 2009, David Rientjes wrote:
> If `memory_slab_hardwall' is set for a cpuset, its tasks will only pull a
> slab off the partial list that was allocated on an allowed node. So in my
> earlier example which segments the machine via cpusets for NUMA locality
> and then divides those cpusets further for exclusive memory to provide to
> individual jobs, slab allocations will be constrained within the cpuset of
> the task that allocated them. When a job dies, all slab allocations are
> freed so that no objects remain on the memory allowed to that job and,
> thus, no partial slabs remain (i.e. there were no object allocations on
> the job's slabs from disjoint cpusets because of the exclusivity).
In order to do that you would need to duplicate the partial lists for
each job and then guarantee that only the job uses objects from these
partial pages.
Usually some partial allocated pages are kept around and are
indiscriminately used by various system components by the OS due to other
processing. Creating partial slabs cannot be avoided like that.
--
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