Linux 6.9-rc6
[sfrench/cifs-2.6.git] / arch / x86 / include / asm / pgtable_areas.h
1 #ifndef _ASM_X86_PGTABLE_AREAS_H
2 #define _ASM_X86_PGTABLE_AREAS_H
3
4 #ifdef CONFIG_X86_32
5 # include <asm/pgtable_32_areas.h>
6 #endif
7
8 /* Single page reserved for the readonly IDT mapping: */
9 #define CPU_ENTRY_AREA_RO_IDT           CPU_ENTRY_AREA_BASE
10 #define CPU_ENTRY_AREA_PER_CPU          (CPU_ENTRY_AREA_RO_IDT + PAGE_SIZE)
11
12 #define CPU_ENTRY_AREA_RO_IDT_VADDR     ((void *)CPU_ENTRY_AREA_RO_IDT)
13
14 #ifdef CONFIG_X86_32
15 #define CPU_ENTRY_AREA_MAP_SIZE         (CPU_ENTRY_AREA_PER_CPU +               \
16                                          (CPU_ENTRY_AREA_SIZE * NR_CPUS) -      \
17                                          CPU_ENTRY_AREA_BASE)
18 #else
19 #define CPU_ENTRY_AREA_MAP_SIZE         P4D_SIZE
20 #endif
21
22 #endif /* _ASM_X86_PGTABLE_AREAS_H */