X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-x86_64%2Fnuma.h;h=1cc92fe02503d00abee3782364dfad767e19386f;hb=9464c7cf61b9433057924c36e6e02f303a00e768;hp=9962665c3a980de1b5e74d2686eae7f917768d43;hpb=daddc0d38b3571bed170afa273a49a0eba090c1e;p=linux-2.6.git diff --git a/include/asm-x86_64/numa.h b/include/asm-x86_64/numa.h index 9962665c3..1cc92fe02 100644 --- a/include/asm-x86_64/numa.h +++ b/include/asm-x86_64/numa.h @@ -1,21 +1,39 @@ #ifndef _ASM_X8664_NUMA_H #define _ASM_X8664_NUMA_H 1 -#define MAXNODE 8 -#define NODEMASK 0xff +#include -struct node { +struct bootnode { u64 start,end; }; -#define for_all_nodes(x) for ((x) = 0; (x) < numnodes; (x)++) \ - if (node_online(x)) - -extern int compute_hash_shift(struct node *nodes); +extern int compute_hash_shift(struct bootnode *nodes, int numnodes); +extern int pxm_to_node(int nid); #define ZONE_ALIGN (1UL << (MAX_ORDER+PAGE_SHIFT)) extern void numa_add_cpu(int cpu); extern void numa_init_array(void); +extern int numa_off; + +extern void numa_set_node(int cpu, int node); +extern void srat_reserve_add_area(int nodeid); +extern int hotadd_percent; + +extern unsigned char apicid_to_node[256]; +#ifdef CONFIG_NUMA +extern void __init init_cpu_to_node(void); + +static inline void clear_node_cpumask(int cpu) +{ + clear_bit(cpu, &node_to_cpumask[cpu_to_node(cpu)]); +} + +#else +#define init_cpu_to_node() do {} while (0) +#define clear_node_cpumask(cpu) do {} while (0) +#endif + +#define NUMA_NO_NODE 0xff #endif