Changeset c89ae25 in mainline for kernel


Ignore:
Timestamp:
2023-10-27T17:24:14Z (20 months ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
master, topic/msim-upgrade, topic/simplify-dev-export
Children:
34120f10, b169619
Parents:
0373af9
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2023-10-27 17:03:39)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2023-10-27 17:24:14)
Message:

Fix and enable —gc-sections in /kernel and /boot

Location:
kernel/arch
Files:
10 edited

Legend:

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

    r0373af9 rc89ae25  
    33                kernel_load_address = .;
    44                ktext_start = .;
    5                 *(.text);
     5                *(.text .text.*);
    66                ktext_end = .;
    77        }
    88        .data : {
    99                kdata_start = .;
    10                 *(.data);                       /* initialized data */
    11                 *(.bss);                        /* uninitialized static variables */
     10                *(.data .data.*);                       /* initialized data */
     11                *(.bss .bss.*);                        /* uninitialized static variables */
    1212                *(COMMON);                      /* global variables */
    1313
     
    1515                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    1616                *(.eh_frame_hdr .eh_frame_hdr.*);
    17                 *(.sdata);
    18                 *(.reginfo);
     17                *(.sdata .sdata.*);
    1918        }
    2019        .sbss : {
    21                 *(.sbss);
    22                 *(.scommon);
     20                *(.sbss .sbss.*);
     21                *(.scommon .scommon.*);
    2322        }
    2423
  • kernel/arch/amd64/_link.ld.in

    r0373af9 rc89ae25  
    1717        .unmapped (BOOT_OFFSET + SIZEOF_HEADERS): AT (BOOT_OFFSET + SIZEOF_HEADERS) {
    1818                unmapped_start = .;
    19                 *(K_TEXT_START);
    20                 *(K_DATA_START);
    21                 *(K_INI_PTLS);
     19                KEEP(*(K_TEXT_START));
     20                KEEP(*(K_DATA_START));
     21                KEEP(*(K_INI_PTLS));
    2222                unmapped_end = .;
    2323        }
     
    2929
    3030                kdata_start = .;
    31                 *(.data);              /* initialized data */
     31                *(.data .data.*);              /* initialized data */
    3232                *(.rodata .rodata.*);
    33                 *(.eh_frame .eh_frame.*);       /* stack unwinding data */
     33                *(.eh_frame .eh_frame.*);      /* stack unwinding data */
    3434                *(.eh_frame_hdr .eh_frame_hdr.*);
    3535                *(COMMON);      /* global variables */
    3636
    3737                /* bss can't be omitted from the ELF image. */
    38                 *(.bss);        /* uninitialized static variables */
     38                *(.bss .bss.*);        /* uninitialized static variables */
    3939                kdata_end = .;
    4040        }
  • kernel/arch/arm32/_link.ld.in

    r0373af9 rc89ae25  
    2828        .text : {
    2929                ktext_start = .;
    30                 *(.text);
     30                *(.text .text.*);
    3131                ktext_end = .;
    3232        }
    3333        .data : {
    3434                kdata_start = .;
    35                 *(.data);                       /* initialized data */
    36                 *(.bss);                        /* uninitialized static variables */
     35                *(.data .data.*);                       /* initialized data */
     36                *(.bss .bss.*);                        /* uninitialized static variables */
    3737                *(COMMON);                      /* global variables */
    3838
     
    4040                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    4141                *(.eh_frame_hdr .eh_frame_hdr.*);
    42                 *(.sdata);
    43                 *(.reginfo);
     42                *(.sdata .sdata.*);
    4443        }
    4544        .sbss : {
    46                 *(.sbss);
    47                 *(.scommon);
     45                *(.sbss .sbss.*);
     46                *(.scommon .scommon.*);
    4847        }
    4948
  • kernel/arch/arm64/_link.ld.in

    r0373af9 rc89ae25  
    2222                . = ALIGN(16);
    2323                ktext_start = .;
    24                 *(K_TEXT_START)
     24                KEEP(*(K_TEXT_START))
    2525                *(.text .text.*);
    2626                ktext_end = .;
    2727
    2828                kdata_start = .;
    29                 *(K_DATA_START)
    30                 *(.data);                       /* initialized data */
    31                 *(.bss);                        /* uninitialized static variables */
     29                KEEP(*(K_DATA_START))
     30                *(.data .data.*);                       /* initialized data */
     31                *(.bss .bss.*);                        /* uninitialized static variables */
    3232                *(COMMON);                      /* global variables */
    3333
  • kernel/arch/ia32/_link.ld.in

    r0373af9 rc89ae25  
    1717        .unmapped (BOOT_OFFSET + SIZEOF_HEADERS): AT (BOOT_OFFSET + SIZEOF_HEADERS) {
    1818                unmapped_start = .;
    19                 *(K_TEXT_START);
    20                 *(K_DATA_START);
     19                KEEP(*(K_TEXT_START));
     20                KEEP(*(K_DATA_START));
    2121                unmapped_end = .;
    2222        }
     
    2828
    2929                kdata_start = .;
    30                 *(.data);               /* initialized data */
     30                *(.data .data.*);               /* initialized data */
    3131                *(.rodata .rodata.*);
    3232                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
     
    3535
    3636                /* bss can't be omitted from the ELF image. */
    37                 *(.bss);                /* uninitialized static variables */
     37                *(.bss .bss.*);                /* uninitialized static variables */
    3838                kdata_end = .;
    3939        }
  • kernel/arch/ia64/_link.ld.in

    r0373af9 rc89ae25  
    1818                . = ALIGN(16);
    1919                ktext_start = .;
    20                 *(K_TEXT_START);
     20                KEEP(*(K_TEXT_START));
    2121                *(.text .text.*)
    2222                ktext_end = .;
    2323
    2424                kdata_start = .;
    25                 *(K_DATA_START)
     25                KEEP(*(K_DATA_START));
    2626                *(.rodata .rodata.*);
    2727                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
     
    3131                __gp = .;
    3232                *(.got .got.*)
    33                 *(.sdata)
    34                 *(.sbss)
    35                 *(.scommon)
    36                 *(.bss)
     33                *(.sdata .sdata.*)
     34                *(.sbss .sbss.*)
     35                *(.scommon .scommon.*)
     36                *(.bss .bss.*)
    3737                *(COMMON);
    3838                kdata_end = .;
  • kernel/arch/mips32/_link.ld.in

    r0373af9 rc89ae25  
    2828        .text : {
    2929                ktext_start = .;
     30                /* FIXME: for some reason, mixing .text with .text.* produces a crash on malta-be */
    3031                *(.text);
     32                *(.text.*);
    3133                ktext_end = .;
    3234        }
    3335        .data : {
    3436                kdata_start = .;
    35                 *(.data);                       /* initialized data */
     37                *(.data .data.*);                       /* initialized data */
    3638                *(.rodata .rodata.*);
    3739                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    3840                *(.eh_frame_hdr .eh_frame_hdr.*);
    39                 *(.sdata);
     41                *(.sdata .sdata.*);
    4042                *(.reginfo);
    41                 *(.sbss);
    42                 *(.scommon);
    43                 *(.bss);                        /* uninitialized static variables */
     43                *(.sbss .sbss.*);
     44                *(.scommon .scommon.*);
     45                *(.bss .bss.*);                        /* uninitialized static variables */
    4446                *(COMMON);                      /* global variables */
    4547        }
  • kernel/arch/ppc32/_link.ld.in

    r0373af9 rc89ae25  
    2222        .unmapped (SIZEOF_HEADERS): AT (SIZEOF_HEADERS) {
    2323                . = ALIGN(0x100);
    24                 *(K_UNMAPPED_TEXT_START);
     24                KEEP(*(K_UNMAPPED_TEXT_START));
    2525        }
    2626
    2727        .mapped PA2KA(BOOT_OFFSET): AT (BOOT_OFFSET) {
    2828                ktext_start = .;
    29                 *(K_TEXT_START);
    30                 *(.text);
     29                KEEP(*(K_TEXT_START));
     30                *(.text .text.*);
    3131                ktext_end = .;
    3232
    3333                kdata_start = .;
    34                 *(K_DATA_START);
     34                KEEP(*(K_DATA_START));
    3535                *(.rodata .rodata.*);
    3636                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    3737                *(.eh_frame_hdr .eh_frame_hdr.*);
    38                 *(.data);       /* initialized data */
    39                 *(.sdata);
    40                 *(.sdata2);
    41                 *(.sbss);
    42                 *(.bss);        /* uninitialized static variables */
     38                *(.data .data.*);       /* initialized data */
     39                *(.sdata .sdata.*);
     40                *(.sdata2 .sdata2.*);
     41                *(.sbss .sbss.*);
     42                *(.bss .bss.*);        /* uninitialized static variables */
    4343                *(COMMON);      /* global variables */
    4444                kdata_end = .;
  • kernel/arch/riscv64/_link.ld.in

    r0373af9 rc89ae25  
    1818        .image (PA2KA(BOOT_OFFSET) + SIZEOF_HEADERS) : AT (BOOT_OFFSET + SIZEOF_HEADERS) {
    1919                ktext_start = .;
    20                 *(K_TEXT_START);
    21                 *(.text);
     20                KEEP(*(K_TEXT_START));
     21                *(.text .text.*);
    2222                ktext_end = .;
    2323
    2424                kdata_start = .;
    25                 *(.data);                       /* initialized data */
     25                *(.data .data.*);                       /* initialized data */
    2626                *(.rodata .rodata.*);
    2727                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    2828                *(.eh_frame_hdr .eh_frame_hdr.*);
    29                 *(.sdata);
    30                 *(.reginfo);
    31                 *(.sbss);
    32                 *(.scommon);
    33                 *(.bss);                        /* uninitialized static variables */
     29                *(.sdata .sdata.*);
     30                *(.sbss .sbss.*);
     31                *(.scommon .scommon.*);
     32                *(.bss .bss.*);                        /* uninitialized static variables */
    3433                *(COMMON);                      /* global variables */
    3534                kdata_end = .;
  • kernel/arch/sparc64/_link.ld.in

    r0373af9 rc89ae25  
    1616        .image (VMA + SIZEOF_HEADERS): AT (LMA + SIZEOF_HEADERS) {
    1717                ktext_start = .;
    18                 *(K_TEXT_START)
     18                KEEP(*(K_TEXT_START));
    1919                *(.text .text.*);
    2020                ktext_end = .;
    2121
    2222                kdata_start = .;
    23                 *(K_DATA_START)
     23                KEEP(*(K_DATA_START));
    2424                *(.rodata .rodata.*);
    2525                *(.eh_frame .eh_frame.*);       /* stack unwinding data */
    2626                *(.eh_frame_hdr .eh_frame_hdr.*);
    27                 *(.data);                   /* initialized data */
    28                 *(.sdata);
    29                 *(.sdata2);
    30                 *(.sbss);
     27                *(.data .data.*);                   /* initialized data */
     28                *(.sdata .sdata.*);
     29                *(.sdata2 .sdata2.*);
     30                *(.sbss .sbss.*);
    3131                . = ALIGN(8);
    32                 *(.bss);                    /* uninitialized static variables */
     32                *(.bss .bss.*);                    /* uninitialized static variables */
    3333                *(COMMON);                  /* global variables */
    3434                kdata_end = .;
Note: See TracChangeset for help on using the changeset viewer.