kern.ldscript.kaslr revision 1.4
11.4Smaxv/* $NetBSD: kern.ldscript.kaslr,v 1.4 2018/01/07 12:42:46 maxv Exp $ */ 21.1Smaxv 31.1Smaxv#include "assym.h" 41.1Smaxv 51.1SmaxvENTRY(_start) 61.1SmaxvSECTIONS 71.1Smaxv{ 81.1Smaxv .text : 91.1Smaxv { 101.1Smaxv *(.text) 111.1Smaxv *(.text.*) 121.1Smaxv *(.stub) 131.1Smaxv } =0xCC 141.1Smaxv _etext = . ; 151.1Smaxv PROVIDE (etext = .) ; 161.1Smaxv 171.1Smaxv __rodata_start = . ; 181.4Smaxv 191.4Smaxv .rodata.hotpatch : 201.4Smaxv { 211.4Smaxv __rodata_hotpatch_start = . ; 221.4Smaxv *(.rodata.hotpatch) 231.4Smaxv __rodata_hotpatch_end = . ; 241.4Smaxv } 251.4Smaxv 261.1Smaxv .rodata : 271.1Smaxv { 281.1Smaxv *(.rodata) 291.1Smaxv *(.rodata.*) 301.1Smaxv } 311.1Smaxv 321.1Smaxv __data_start = . ; 331.1Smaxv .data : 341.1Smaxv { 351.1Smaxv *(.data) 361.1Smaxv } 371.1Smaxv 381.2Smaxv .data.cacheline_aligned : SUBALIGN(COHERENCY_UNIT) 391.1Smaxv { 401.1Smaxv *(.data.cacheline_aligned) 411.2Smaxv . = ALIGN(COHERENCY_UNIT); 421.1Smaxv } 431.2Smaxv .data.read_mostly : SUBALIGN(COHERENCY_UNIT) 441.1Smaxv { 451.1Smaxv *(.data.read_mostly) 461.2Smaxv . = ALIGN(COHERENCY_UNIT); 471.1Smaxv } 481.1Smaxv 491.1Smaxv _edata = . ; 501.1Smaxv PROVIDE (edata = .) ; 511.1Smaxv __bss_start = . ; 521.1Smaxv .bss : 531.1Smaxv { 541.1Smaxv *(.bss) 551.1Smaxv *(.bss.*) 561.1Smaxv *(COMMON) 571.1Smaxv } 581.1Smaxv 591.1Smaxv /* End of the kernel image */ 601.1Smaxv __kernel_end = . ; 611.1Smaxv 621.1Smaxv _end = . ; 631.1Smaxv PROVIDE (end = .) ; 641.1Smaxv .note.netbsd.ident : 651.1Smaxv { 661.1Smaxv KEEP(*(.note.netbsd.ident)); 671.1Smaxv } 681.3Smaxv 691.3Smaxv /DISCARD/ : 701.3Smaxv { 711.3Smaxv *(.SUNW_ctf) 721.3Smaxv *(.SUNW_ctf.*) 731.3Smaxv } 741.1Smaxv} 75