svn commit: r315522 - in head: contrib/binutils/ld/emulparams sys/conf
Ed Maste
emaste at FreeBSD.org
Sun Mar 19 00:22:15 UTC 2017
Author: emaste
Date: Sun Mar 19 00:22:13 2017
New Revision: 315522
URL: https://svnweb.freebsd.org/changeset/base/315522
Log:
use INT3 instead of NOP for x86 binary padding
We should never end up executing the inter-function padding, so we
are better off faulting than silently carrying on to whatever function
happens to be next.
Note that LLD will soon do this by default (although it currently pads
with zeros).
Reviewed by: dim, kib
MFC after: 1 month
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D10047
Modified:
head/contrib/binutils/ld/emulparams/elf_i386.sh
head/contrib/binutils/ld/emulparams/elf_x86_64.sh
head/sys/conf/ldscript.amd64
head/sys/conf/ldscript.i386
Modified: head/contrib/binutils/ld/emulparams/elf_i386.sh
==============================================================================
--- head/contrib/binutils/ld/emulparams/elf_i386.sh Sat Mar 18 23:59:50 2017 (r315521)
+++ head/contrib/binutils/ld/emulparams/elf_i386.sh Sun Mar 19 00:22:13 2017 (r315522)
@@ -6,7 +6,7 @@ COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE
NONPAGED_TEXT_START_ADDR=0x08048000
ARCH=i386
MACHINE=
-NOP=0x90909090
+NOP=0xCCCCCCCC
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
Modified: head/contrib/binutils/ld/emulparams/elf_x86_64.sh
==============================================================================
--- head/contrib/binutils/ld/emulparams/elf_x86_64.sh Sat Mar 18 23:59:50 2017 (r315521)
+++ head/contrib/binutils/ld/emulparams/elf_x86_64.sh Sun Mar 19 00:22:13 2017 (r315522)
@@ -7,7 +7,7 @@ COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE
NONPAGED_TEXT_START_ADDR=0x400000
ARCH="i386:x86-64"
MACHINE=
-NOP=0x90909090
+NOP=0xCCCCCCCC
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
Modified: head/sys/conf/ldscript.amd64
==============================================================================
--- head/sys/conf/ldscript.amd64 Sat Mar 18 23:59:50 2017 (r315521)
+++ head/sys/conf/ldscript.amd64 Sun Mar 19 00:22:13 2017 (r315522)
@@ -56,7 +56,7 @@ SECTIONS
.init :
{
KEEP (*(.init))
- } =0x90909090
+ } =0xCCCCCCCC
.plt : { *(.plt) }
.text :
{
@@ -64,11 +64,11 @@ SECTIONS
KEEP (*(.text.*personality*))
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
- } =0x90909090
+ } =0xCCCCCCCC
.fini :
{
KEEP (*(.fini))
- } =0x90909090
+ } =0xCCCCCCCC
PROVIDE (__etext = .);
PROVIDE (_etext = .);
PROVIDE (etext = .);
Modified: head/sys/conf/ldscript.i386
==============================================================================
--- head/sys/conf/ldscript.i386 Sat Mar 18 23:59:50 2017 (r315521)
+++ head/sys/conf/ldscript.i386 Sun Mar 19 00:22:13 2017 (r315522)
@@ -44,7 +44,7 @@ SECTIONS
.init :
{
KEEP (*(.init))
- } =0x90909090
+ } =0xCCCCCCCC
.plt : { *(.plt) }
.text :
{
@@ -52,11 +52,11 @@ SECTIONS
KEEP (*(.text.*personality*))
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
- } =0x90909090
+ } =0xCCCCCCCC
.fini :
{
KEEP (*(.fini))
- } =0x90909090
+ } =0xCCCCCCCC
PROVIDE (__etext = .);
PROVIDE (_etext = .);
PROVIDE (etext = .);
More information about the svn-src-all
mailing list