Re: [PATCH v2] cpusets: randomize node rotor used incpuset_mem_spread_node()

From: Michal Hocko
Date: Fri May 27 2011 - 19:40:14 EST


On Fri 27-05-11 16:27:34, David Rientjes wrote:
> On Sat, 28 May 2011, Michal Hocko wrote:
>
> > > CONFIG_NODES_SHIFT is used for UMA machines that are using DISCONTIGMEM
> > > usually because they have very large holes; such machines don't need
> > > things like mempolicies but do need the data structures that abstract
> > > ranges of memory in the physical address space. This build breakage
> > > probably isn't restricted to only alpha, you could probably see it with at
> > > least ia64 and mips as well.
> >
> > Hmmm. I just find strange that some UMA arch uses functions like
> > {first,next}_online_node.
> >
>
> They shouldn't, but they do use NUMA data structures like pg_data_t for
> DISCONTIGMEM. The MAX_NUMNODES > 1 optimization in nodemask.h is to
> prevent doing things like node_weight() on a nodemask when we know that
> only one bit will ever be set, otherwise we could make it conditional on
> CONFIG_NEED_MULTIPLE_NODES.

Thanks for the explanation.

--
Michal Hocko
SUSE Labs
SUSE LINUX s.r.o.
Lihovarska 1060/12
190 00 Praha 9
Czech Republic
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/