Re: NUMA aware slab allocator V3

Dave Hansen
2005-05-17T00:27:43Z

> +#ifdef CONFIG_NUMA
> +#define NUMA_NODES MAX_NUMNODES
> +#define NUMA_NODE_ID numa_node_id()
> +#else
> +#define NUMA_NODES 1
> +#define NUMA_NODE_ID 0
> #endif

I think numa_node_id() should always do what you want. It is never
related to discontig nodes, and #defines down to the same thing you have
in the end, anyway:

#define numa_node_id() (cpu_to_node(_smp_processor_id()))

asm-i386/topology.h
#ifdef CONFIG_NUMA
...
static inline int cpu_to_node(int cpu)
{
return cpu_2_node[cpu];
}

asm-generic/topology.h:
#ifndef cpu_to_node
#define cpu_to_node(cpu) (0)
#endif

As for the MAX_NUMNODES, I'd just continue to use it, instead of a new
#define. There is no case where there can be more NUMA nodes than
DISCONTIG nodes, and this assumption appears in plenty of other code.

I'm cc'ing Matt Dobson, who's touched this MAX_NUMNODES business a lot
more recently than I.

-- Dave