diff options
| author | David Woodhouse <dwmw@amazon.co.uk> | 2024-12-05 15:05:15 +0000 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2024-12-06 10:42:00 +0100 |
| commit | 8dbec5c77bc32f04583d3973c8178a74e72fdf18 (patch) | |
| tree | 0a3ac31b8e3bf94045c134db098b97538ab32d61 /arch/x86/kernel/vmlinux.lds.S | |
| parent | cb33ff9e063c1230d557d97ff6e87d097821d517 (diff) | |
x86/kexec: Add data section to relocate_kernel
Now that the relocate_kernel page is handled sanely by a linker script
we can have actual data, and just use %rip-relative addressing to access
it.
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Baoquan He <bhe@redhat.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: Dave Young <dyoung@redhat.com>
Cc: Eric Biederman <ebiederm@xmission.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Link: https://lore.kernel.org/r/20241205153343.3275139-10-dwmw2@infradead.org
Diffstat (limited to 'arch/x86/kernel/vmlinux.lds.S')
| -rw-r--r-- | arch/x86/kernel/vmlinux.lds.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S index 78ce1a0a408f..0c893997f023 100644 --- a/arch/x86/kernel/vmlinux.lds.S +++ b/arch/x86/kernel/vmlinux.lds.S @@ -101,6 +101,7 @@ const_pcpu_hot = pcpu_hot; . = ALIGN(0x100); \ __relocate_kernel_start = .; \ *(.text.relocate_kernel); \ + *(.data.relocate_kernel); \ __relocate_kernel_end = .; ASSERT(__relocate_kernel_end - __relocate_kernel_start <= KEXEC_CONTROL_CODE_MAX_SIZE, |
