diff --git a/Kernel/Prekernel/boot.S b/Kernel/Prekernel/boot.S index 8238e3b0d3..ae4c8b8288 100644 --- a/Kernel/Prekernel/boot.S +++ b/Kernel/Prekernel/boot.S @@ -38,7 +38,7 @@ boot_pd_kernel_pts: boot_pd_kernel_pt1023: .skip 4096 -.section .boot_text, "ax" +.section .text .global start .type start, @function diff --git a/Kernel/Prekernel/linker.ld b/Kernel/Prekernel/linker.ld index 3e66f84a54..1204520540 100644 --- a/Kernel/Prekernel/linker.ld +++ b/Kernel/Prekernel/linker.ld @@ -3,7 +3,6 @@ ENTRY(start) PHDRS { boot_text PT_LOAD ; - boot_bss PT_LOAD ; text PT_LOAD ; data PT_LOAD ; bss PT_LOAD ; @@ -17,20 +16,12 @@ SECTIONS .boot_text ALIGN(4K) : AT (ADDR(.boot_text)) { - KEEP(*(.boot_text)) KEEP(*(.multiboot)) } :boot_text - .boot_bss ALIGN(4K) (NOLOAD) : AT (ADDR(.boot_bss)) - { - KEEP(*(.page_tables)) - KEEP(*(.stack)) - *(.super_pages) - } :boot_bss - .text ALIGN(4K) : AT (ADDR(.text)) { - start_of_kernel_text = .; + start_of_prekernel_text = .; *(.text*) } :text @@ -48,6 +39,8 @@ SECTIONS { *(COMMON) *(.bss) + *(.stack) + *(.page_tables) } :bss end_of_prekernel_image = .;