git: 74f6ec6fe3cf - main - lib{c,sys}: .note.GNU-stack in syscall stubs
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 04 Oct 2024 23:06:36 UTC
The branch main has been updated by brooks:
URL: https://cgit.FreeBSD.org/src/commit/?id=74f6ec6fe3cf47cc0482cd5fb10d5c3c967bfd1f
commit 74f6ec6fe3cf47cc0482cd5fb10d5c3c967bfd1f
Author: Brooks Davis <brooks@FreeBSD.org>
AuthorDate: 2024-10-04 21:13:41 +0000
Commit: Brooks Davis <brooks@FreeBSD.org>
CommitDate: 2024-10-04 22:01:45 +0000
lib{c,sys}: .note.GNU-stack in syscall stubs
Explicitly disable executable stacks in the syscall stubs on all
architectures. Previously, aarch64 and riscv64 didn't include the
.note.GNU-stack note due it being disabled by default in those ABIs.
This appears to have been harmless in practice, but better to be clear
in case a different compiler/linker has different defaults. This also
reduces special cases in the Makefile.
Reported by: jrtc27
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D44883
---
lib/libsys/Makefile.sys | 5 -----
1 file changed, 5 deletions(-)
diff --git a/lib/libsys/Makefile.sys b/lib/libsys/Makefile.sys
index d18f4bc23227..7454f5a47720 100644
--- a/lib/libsys/Makefile.sys
+++ b/lib/libsys/Makefile.sys
@@ -129,12 +129,7 @@ SYM_MAPS+= ${LIBSYS_SRCTOP}/${LIBC_ARCH}/Symbol.sys.map
# Generated files
CLEANFILES+= ${SASM} ${SPSEUDO}
-.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
- ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm"
NOTE_GNU_STACK='\t.section .note.GNU-stack,"",%%progbits\n'
-.else
-NOTE_GNU_STACK=''
-.endif
.if ${MACHINE_CPUARCH} == "aarch64"
FEATURE_NOTE='\#include <sys/elf_common.h>\nGNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL)\n'
.else