mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-31 05:09:12 +00:00
Prekernel: Make sure the last few bytes of the kernel image are mapped
Depending on the exact layout of the .ksyms section the kernel would fail to boot because the kernel_load_end variable didn't account for the section's size.
This commit is contained in:
parent
157fccfe7b
commit
3678f78bfb
Notes:
sideshowbarker
2024-07-18 08:44:37 +09:00
Author: https://github.com/gunnarbeutner
Commit: 3678f78bfb
Pull-request: https://github.com/SerenityOS/serenity/pull/8887
1 changed files with 1 additions and 1 deletions
|
@ -72,7 +72,7 @@ extern "C" [[noreturn]] void init()
|
|||
ElfW(Phdr)* kernel_program_headers = (ElfW(Phdr*))((char*)kernel_elf_header + kernel_elf_header->e_phoff);
|
||||
|
||||
FlatPtr kernel_load_base = kernel_program_headers[0].p_vaddr;
|
||||
FlatPtr kernel_load_end = kernel_program_headers[kernel_elf_header->e_phnum - 1].p_vaddr;
|
||||
FlatPtr kernel_load_end = kernel_program_headers[kernel_elf_header->e_phnum - 1].p_vaddr + kernel_program_headers[kernel_elf_header->e_phnum - 1].p_memsz;
|
||||
|
||||
// align to 1GB
|
||||
kernel_load_base &= ~(FlatPtr)0x3fffffff;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue