summaryrefslogtreecommitdiff
path: root/Kernel/Prekernel/Prekernel.h
diff options
context:
space:
mode:
authorGunnar Beutner <gbeutner@serenityos.org>2021-07-26 15:10:51 +0200
committerAndreas Kling <kling@serenityos.org>2021-07-27 13:15:16 +0200
commit57417a3d6efe872d26cc790c5cc009dac3a3c8be (patch)
tree8ec61e9fcd76db03945c5b413276a920fc422087 /Kernel/Prekernel/Prekernel.h
parente3d2ca6bd20257bbb49a8da5e37b8e71dc697333 (diff)
downloadserenity-57417a3d6efe872d26cc790c5cc009dac3a3c8be.zip
Kernel: Support loading the kernel at almost arbitrary virtual addresses
This enables further work on implementing KASLR by adding relocation support to the pre-kernel and updating the kernel to be less dependent on specific virtual memory layouts.
Diffstat (limited to 'Kernel/Prekernel/Prekernel.h')
-rw-r--r--Kernel/Prekernel/Prekernel.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/Kernel/Prekernel/Prekernel.h b/Kernel/Prekernel/Prekernel.h
index 69d90faf66..92d1239a71 100644
--- a/Kernel/Prekernel/Prekernel.h
+++ b/Kernel/Prekernel/Prekernel.h
@@ -12,7 +12,7 @@
# include <Kernel/VirtualAddress.h>
#endif
-#define MAX_KERNEL_SIZE 0x3000000
+#define MAX_KERNEL_SIZE 0x4000000
#ifdef __cplusplus
namespace Kernel {
@@ -21,7 +21,8 @@ struct [[gnu::packed]] BootInfo {
u32 start_of_prekernel_image;
u32 end_of_prekernel_image;
u64 physical_to_virtual_offset;
- u64 kernel_base;
+ u64 kernel_mapping_base;
+ u64 kernel_load_base;
# if ARCH(X86_64)
u32 gdt64ptr;
u16 code64_sel;