diff --git a/src/arch/i386/scripts/i386-kir.lds b/src/arch/i386/scripts/i386-kir.lds index 3095b311..401298c9 100644 --- a/src/arch/i386/scripts/i386-kir.lds +++ b/src/arch/i386/scripts/i386-kir.lds @@ -64,6 +64,8 @@ SECTIONS { . = _text16_link_addr; _text16 = .; + . += 1; /* Prevent NULL being valid */ + .text16 : AT ( _text16_load_offset + __text16 ) { __text16 = .; *(.text.null_trap) @@ -80,6 +82,8 @@ SECTIONS { . = _data16_link_addr; _data16 = .; + . += 1; /* Prevent NULL being valid */ + .rodata16 : AT ( _data16_load_offset + __rodata16 ) { __rodata16 = .; *(.rodata16) diff --git a/src/arch/i386/scripts/i386.lds b/src/arch/i386/scripts/i386.lds index 30776092..6adb6b99 100644 --- a/src/arch/i386/scripts/i386.lds +++ b/src/arch/i386/scripts/i386.lds @@ -65,6 +65,8 @@ SECTIONS { . = _text16_link_addr; _text16 = .; + . += 1; /* Prevent NULL being valid */ + .text16 : AT ( _text16_load_offset + __text16 ) { __text16 = .; *(.text16) @@ -78,6 +80,8 @@ SECTIONS { . = _data16_link_addr; _data16 = .; + . += 1; /* Prevent NULL being valid */ + .rodata16 : AT ( _data16_load_offset + __rodata16 ) { __rodata16 = .; *(.rodata16) @@ -115,6 +119,8 @@ SECTIONS { _text = .; + . += 1; /* Prevent NULL being valid */ + .text : AT ( _textdata_load_offset + __text ) { __text = .; *(.text.null_trap)