x86: spinlock_32/64 substitute types and instructions
[linux-2.6/mini2440.git] / include / asm-x86 / numa_64.h
blobe6bc0b5dfe3a19715453cd6ae230f6f6cf7dd61a
1 #ifndef _ASM_X8664_NUMA_H
2 #define _ASM_X8664_NUMA_H 1
4 #include <linux/nodemask.h>
5 #include <asm/apicdef.h>
7 struct bootnode {
8 u64 start,end;
9 };
11 extern int compute_hash_shift(struct bootnode *nodes, int numnodes);
13 #define ZONE_ALIGN (1UL << (MAX_ORDER+PAGE_SHIFT))
15 extern void numa_add_cpu(int cpu);
16 extern void numa_init_array(void);
17 extern int numa_off;
19 extern void numa_set_node(int cpu, int node);
20 extern void srat_reserve_add_area(int nodeid);
21 extern int hotadd_percent;
23 extern unsigned char apicid_to_node[MAX_LOCAL_APIC];
25 extern void numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn);
26 extern unsigned long numa_free_all_bootmem(void);
27 extern void setup_node_bootmem(int nodeid, unsigned long start,
28 unsigned long end);
30 #ifdef CONFIG_NUMA
31 extern void __init init_cpu_to_node(void);
33 static inline void clear_node_cpumask(int cpu)
35 clear_bit(cpu, &node_to_cpumask[cpu_to_node(cpu)]);
38 #else
39 #define init_cpu_to_node() do {} while (0)
40 #define clear_node_cpumask(cpu) do {} while (0)
41 #endif
43 #define NUMA_NO_NODE 0xff
45 #endif