1 | /* SPDX-License-Identifier: GPL-2.0 */ |
---|---|
2 | #ifndef __X86_MM_NUMA_INTERNAL_H |
3 | #define __X86_MM_NUMA_INTERNAL_H |
4 | |
5 | #include <linux/types.h> |
6 | #include <asm/numa.h> |
7 | |
8 | struct numa_memblk { |
9 | u64 start; |
10 | u64 end; |
11 | int nid; |
12 | }; |
13 | |
14 | struct numa_meminfo { |
15 | int nr_blks; |
16 | struct numa_memblk blk[NR_NODE_MEMBLKS]; |
17 | }; |
18 | |
19 | void __init numa_remove_memblk_from(int idx, struct numa_meminfo *mi); |
20 | int __init numa_cleanup_meminfo(struct numa_meminfo *mi); |
21 | void __init numa_reset_distance(void); |
22 | |
23 | void __init x86_numa_init(void); |
24 | |
25 | #ifdef CONFIG_NUMA_EMU |
26 | void __init numa_emulation(struct numa_meminfo *numa_meminfo, |
27 | int numa_dist_cnt); |
28 | #else |
29 | static inline void numa_emulation(struct numa_meminfo *numa_meminfo, |
30 | int numa_dist_cnt) |
31 | { } |
32 | #endif |
33 | |
34 | #endif /* __X86_MM_NUMA_INTERNAL_H */ |
35 |