Messages in this thread | | | Date | Mon, 3 Mar 2008 21:24:11 +0100 | From | Nick Piggin <> | Subject | Re: [rfc][patch 2/3] slab: introduce SMP alignment |
| |
On Mon, Mar 03, 2008 at 12:17:20PM -0800, Christoph Lameter wrote: > On Mon, 3 Mar 2008, Nick Piggin wrote: > > > > You want two ways of specifying alignments? > > > > I want a way to ask for SMP friendly allocation. > > Then align the objects at cacheline boundaries by providing a value for > the align parameter to kmem_cache_create().
max(num_possible_cpus() > 1 ? cache_line_size() : 0, mandatory_alignment)?
Then suppose we want a CONFIG_TINY option to eliminate it?
max(!CONFIG_TINY && num_possible_cpus() > 1 ? cache_line_size() : 0, mandatory_alignment)
And maybe the VSMP guys will want to blow this out to their internode alignment?
max(!CONFIG_TINY && num_possible_cpus() > 1 ? (is_vsmp ? internode_alignemnt : cache_line_size()) : 0, mandatory_alignment)
| |