Changeset 6677acb in mainline for kernel/arch/arm64/_link.ld.in


Ignore:
Timestamp:
2024-01-14T15:09:08Z (5 months ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
master
Children:
3b68542
Parents:
5907aa4
Message:

Emit .text/.data/.eh_frame sections in kernel ELF files

Gives tools like objdump an easier time interpreting contents of
the file, and allows kernel to find .eh_frame_hdr since the linker
emits a program header for it when it's present under the standard
name.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/arm64/_link.ld.in

    r5907aa4 r6677acb  
    1919        kernel_load_address = LOAD_ADDRESS_V;
    2020
    21         .image (LOAD_ADDRESS_V + SIZEOF_HEADERS) : AT (LOAD_ADDRESS_P + SIZEOF_HEADERS) {
     21        .text (LOAD_ADDRESS_V + SIZEOF_HEADERS) : AT (LOAD_ADDRESS_P + SIZEOF_HEADERS) {
    2222                . = ALIGN(16);
    2323                ktext_start = .;
     
    2525                *(.text .text.*);
    2626                ktext_end = .;
     27        }
    2728
     29        /* stack unwinding data */
     30        .eh_frame_hdr : {
     31                eh_frame_hdr_start = .;
     32                *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*);
     33                eh_frame_hdr_end = .;
     34        }
     35
     36        .eh_frame : {
     37                eh_frame_start = .;
     38                KEEP(*(.eh_frame .eh_frame.*));
     39                eh_frame_end = .;
     40        }
     41
     42        .data : {
    2843                kdata_start = .;
    2944                KEEP(*(K_DATA_START))
     45                *(.rodata .rodata.*);
    3046                *(.data .data.*);                       /* initialized data */
    3147                *(.bss .bss.*);                        /* uninitialized static variables */
    3248                *(COMMON);                      /* global variables */
    33 
    34                 *(.rodata .rodata.*);
    35                 *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    36                 *(.eh_frame_hdr .eh_frame_hdr.*);
    37 
    3849                kdata_end = .;
    3950        }
Note: See TracChangeset for help on using the changeset viewer.