diff options
Diffstat (limited to 'arch/x86/include/asm/kexec.h')
| -rw-r--r-- | arch/x86/include/asm/kexec.h | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/arch/x86/include/asm/kexec.h b/arch/x86/include/asm/kexec.h index a1f22771a15a..c61d8b2ab8b9 100644 --- a/arch/x86/include/asm/kexec.h +++ b/arch/x86/include/asm/kexec.h | |||
| @@ -5,21 +5,8 @@ | |||
| 5 | # define PA_CONTROL_PAGE 0 | 5 | # define PA_CONTROL_PAGE 0 |
| 6 | # define VA_CONTROL_PAGE 1 | 6 | # define VA_CONTROL_PAGE 1 |
| 7 | # define PA_PGD 2 | 7 | # define PA_PGD 2 |
| 8 | # define VA_PGD 3 | 8 | # define PA_SWAP_PAGE 3 |
| 9 | # define PA_PTE_0 4 | 9 | # define PAGES_NR 4 |
| 10 | # define VA_PTE_0 5 | ||
| 11 | # define PA_PTE_1 6 | ||
| 12 | # define VA_PTE_1 7 | ||
| 13 | # define PA_SWAP_PAGE 8 | ||
| 14 | # ifdef CONFIG_X86_PAE | ||
| 15 | # define PA_PMD_0 9 | ||
| 16 | # define VA_PMD_0 10 | ||
| 17 | # define PA_PMD_1 11 | ||
| 18 | # define VA_PMD_1 12 | ||
| 19 | # define PAGES_NR 13 | ||
| 20 | # else | ||
| 21 | # define PAGES_NR 9 | ||
| 22 | # endif | ||
| 23 | #else | 10 | #else |
| 24 | # define PA_CONTROL_PAGE 0 | 11 | # define PA_CONTROL_PAGE 0 |
| 25 | # define VA_CONTROL_PAGE 1 | 12 | # define VA_CONTROL_PAGE 1 |
| @@ -170,6 +157,20 @@ relocate_kernel(unsigned long indirection_page, | |||
| 170 | unsigned long start_address) ATTRIB_NORET; | 157 | unsigned long start_address) ATTRIB_NORET; |
| 171 | #endif | 158 | #endif |
| 172 | 159 | ||
| 160 | #ifdef CONFIG_X86_32 | ||
| 161 | #define ARCH_HAS_KIMAGE_ARCH | ||
| 162 | |||
| 163 | struct kimage_arch { | ||
| 164 | pgd_t *pgd; | ||
| 165 | #ifdef CONFIG_X86_PAE | ||
| 166 | pmd_t *pmd0; | ||
| 167 | pmd_t *pmd1; | ||
| 168 | #endif | ||
| 169 | pte_t *pte0; | ||
| 170 | pte_t *pte1; | ||
| 171 | }; | ||
| 172 | #endif | ||
| 173 | |||
| 173 | #endif /* __ASSEMBLY__ */ | 174 | #endif /* __ASSEMBLY__ */ |
| 174 | 175 | ||
| 175 | #endif /* _ASM_X86_KEXEC_H */ | 176 | #endif /* _ASM_X86_KEXEC_H */ |
