git: 23dff4fdba98 - main - kernel: Sync ldscript files wrt gnu.attributes and .note.GNU-stack
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 29 Feb 2024 16:31:01 UTC
The branch main has been updated by imp:
URL: https://cgit.FreeBSD.org/src/commit/?id=23dff4fdba987a56f4118f065cdb534cb6faba37
commit 23dff4fdba987a56f4118f065cdb534cb6faba37
Author: Warner Losh <imp@FreeBSD.org>
AuthorDate: 2024-02-29 16:30:37 +0000
Commit: Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-02-29 16:30:37 +0000
kernel: Sync ldscript files wrt gnu.attributes and .note.GNU-stack
Bring the keeping of .gnu.attributes to all architectures. Also discard
.note.GNU-stack on all archtiectures. Plus delete obsolete comment that
was removed from i386 in 2010.
Sponsored by: Netflix
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D44069
---
sys/conf/ldscript.amd64 | 1 +
sys/conf/ldscript.arm | 4 +++-
sys/conf/ldscript.arm64 | 4 +++-
sys/conf/ldscript.i386 | 1 +
sys/conf/ldscript.powerpc | 6 +++---
sys/conf/ldscript.powerpc64 | 6 +++---
sys/conf/ldscript.powerpc64le | 6 +++---
sys/conf/ldscript.powerpcspe | 5 +++--
sys/conf/ldscript.riscv | 4 +++-
9 files changed, 23 insertions(+), 14 deletions(-)
diff --git a/sys/conf/ldscript.amd64 b/sys/conf/ldscript.amd64
index 9c6e603a5753..302f5cd2c4f8 100644
--- a/sys/conf/ldscript.amd64
+++ b/sys/conf/ldscript.amd64
@@ -213,6 +213,7 @@ SECTIONS
/* DWARF 3 */
.debug_pubtypes 0 : { *(.debug_pubtypes) }
.debug_ranges 0 : { *(.debug_ranges) }
+
.gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(.note.GNU-stack) }
}
diff --git a/sys/conf/ldscript.arm b/sys/conf/ldscript.arm
index a9c39977a6fc..57ce8c068c44 100644
--- a/sys/conf/ldscript.arm
+++ b/sys/conf/ldscript.arm
@@ -153,5 +153,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
+
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
}
diff --git a/sys/conf/ldscript.arm64 b/sys/conf/ldscript.arm64
index afb2687f0368..e9edbd8b7402 100644
--- a/sys/conf/ldscript.arm64
+++ b/sys/conf/ldscript.arm64
@@ -170,5 +170,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
+
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
}
diff --git a/sys/conf/ldscript.i386 b/sys/conf/ldscript.i386
index 6563ed2cd623..c7fe91c9d4d5 100644
--- a/sys/conf/ldscript.i386
+++ b/sys/conf/ldscript.i386
@@ -198,6 +198,7 @@ SECTIONS
/* DWARF 3 */
.debug_pubtypes 0 : { *(.debug_pubtypes) }
.debug_ranges 0 : { *(.debug_ranges) }
+
.gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(.note.GNU-stack) }
}
diff --git a/sys/conf/ldscript.powerpc b/sys/conf/ldscript.powerpc
index c08123e4eaba..0fa3fc9b3fa7 100644
--- a/sys/conf/ldscript.powerpc
+++ b/sys/conf/ldscript.powerpc
@@ -1,4 +1,3 @@
-
OUTPUT_FORMAT("elf32-powerpc-freebsd", "elf32-powerpc-freebsd",
"elf32-powerpc-freebsd")
OUTPUT_ARCH(powerpc)
@@ -149,6 +148,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
-}
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
+}
diff --git a/sys/conf/ldscript.powerpc64 b/sys/conf/ldscript.powerpc64
index df279576193f..3e418c3c1189 100644
--- a/sys/conf/ldscript.powerpc64
+++ b/sys/conf/ldscript.powerpc64
@@ -1,4 +1,3 @@
-
OUTPUT_FORMAT("elf64-powerpc-freebsd", "elf64-powerpc-freebsd",
"elf64-powerpc-freebsd")
OUTPUT_ARCH(powerpc:common64)
@@ -174,6 +173,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
-}
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
+}
diff --git a/sys/conf/ldscript.powerpc64le b/sys/conf/ldscript.powerpc64le
index 3fd80d3130fb..4fdfcb295ab7 100644
--- a/sys/conf/ldscript.powerpc64le
+++ b/sys/conf/ldscript.powerpc64le
@@ -1,4 +1,3 @@
-
OUTPUT_FORMAT("elf64-powerpcle-freebsd", "elf64-powerpcle-freebsd",
"elf64-powerpcle-freebsd")
OUTPUT_ARCH(powerpc:common64)
@@ -175,6 +174,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
-}
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
+}
diff --git a/sys/conf/ldscript.powerpcspe b/sys/conf/ldscript.powerpcspe
index 7d5b54a655a6..f35a15816108 100644
--- a/sys/conf/ldscript.powerpcspe
+++ b/sys/conf/ldscript.powerpcspe
@@ -1,4 +1,3 @@
-
OUTPUT_FORMAT("elf32-powerpc-freebsd", "elf32-powerpc-freebsd",
"elf32-powerpc-freebsd")
OUTPUT_ARCH(powerpc)
@@ -150,6 +149,8 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
+
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
}
diff --git a/sys/conf/ldscript.riscv b/sys/conf/ldscript.riscv
index 9a2764a23789..15f896112d04 100644
--- a/sys/conf/ldscript.riscv
+++ b/sys/conf/ldscript.riscv
@@ -144,5 +144,7 @@ SECTIONS
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
- /* These must appear regardless of . */
+
+ .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
+ /DISCARD/ : { *(.note.GNU-stack) }
}