git: 7787316e1957 - stable/15 - sys: centralize SV_* flags definitions for ELF Linux ABIs

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Mon, 26 Oct 2026 03:40:18 UTC
The branch stable/15 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=7787316e1957e1daca2a95b0dc0913ad590b6447

commit 7787316e1957e1daca2a95b0dc0913ad590b6447
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2026-10-20 18:23:26 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2026-10-26 03:38:19 +0000

    sys: centralize SV_* flags definitions for ELF Linux ABIs
    
    (cherry picked from commit 8dfa23d81f5e0969ac31c34279201f9286358e44)
---
 sys/amd64/linux/linux_sysvec.c     | 3 +--
 sys/amd64/linux32/linux32_sysvec.c | 4 +---
 sys/arm64/linux/linux_sysvec.c     | 3 +--
 sys/i386/linux/linux_sysvec.c      | 4 +---
 sys/sys/sysent.h                   | 2 ++
 5 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c
index 8ba0673a2cc2..97d6f7cd0a13 100644
--- a/sys/amd64/linux/linux_sysvec.c
+++ b/sys/amd64/linux/linux_sysvec.c
@@ -700,8 +700,7 @@ struct sysentvec elf_linux_sysvec = {
 	.sv_setregs	= linux_exec_setregs,
 	.sv_fixlimit	= NULL,
 	.sv_maxssiz	= NULL,
-	.sv_flags	= SV_ABI_LINUX | SV_LP64 | SV_SHP | SV_SIG_DISCIGN |
-	    SV_SIG_WAITNDQ | SV_TIMEKEEP | SV_PERSISTENT_CTTY,
+	.sv_flags	= SV_ABI_LINUX_FLAGS | SV_LP64,
 	.sv_set_syscall_retval = linux_set_syscall_retval,
 	.sv_fetch_syscall_args = linux_fetch_syscall_args,
 	.sv_syscallnames = linux_syscallnames,
diff --git a/sys/amd64/linux32/linux32_sysvec.c b/sys/amd64/linux32/linux32_sysvec.c
index 5934aaee9a80..0124df3537c3 100644
--- a/sys/amd64/linux32/linux32_sysvec.c
+++ b/sys/amd64/linux32/linux32_sysvec.c
@@ -800,9 +800,7 @@ struct sysentvec elf_linux_sysvec = {
 	.sv_setregs	= linux_exec_setregs,
 	.sv_fixlimit	= linux32_fixlimit,
 	.sv_maxssiz	= &linux32_maxssiz,
-	.sv_flags	= SV_ABI_LINUX | SV_ILP32 | SV_SHP |
-	    SV_SIG_DISCIGN | SV_SIG_WAITNDQ | SV_TIMEKEEP |
-	    SV_PERSISTENT_CTTY,
+	.sv_flags	= SV_ABI_LINUX_FLAGS | SV_ILP32,
 	.sv_set_syscall_retval = linux32_set_syscall_retval,
 	.sv_fetch_syscall_args = linux32_fetch_syscall_args,
 	.sv_syscallnames = linux32_syscallnames,
diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c
index 03e86307dc34..6d46b16dfe71 100644
--- a/sys/arm64/linux/linux_sysvec.c
+++ b/sys/arm64/linux/linux_sysvec.c
@@ -448,8 +448,7 @@ struct sysentvec elf_linux_sysvec = {
 	.sv_setregs	= linux_exec_setregs,
 	.sv_fixlimit	= NULL,
 	.sv_maxssiz	= NULL,
-	.sv_flags	= SV_ABI_LINUX | SV_LP64 | SV_SHP | SV_SIG_DISCIGN |
-	    SV_SIG_WAITNDQ | SV_TIMEKEEP | SV_PERSISTENT_CTTY,
+	.sv_flags	= SV_ABI_LINUX_FLAGS | SV_LP64,
 	.sv_set_syscall_retval = linux_set_syscall_retval,
 	.sv_fetch_syscall_args = linux_fetch_syscall_args,
 	.sv_syscallnames = linux_syscallnames,
diff --git a/sys/i386/linux/linux_sysvec.c b/sys/i386/linux/linux_sysvec.c
index 333f8d21cdb3..5153de5a442d 100644
--- a/sys/i386/linux/linux_sysvec.c
+++ b/sys/i386/linux/linux_sysvec.c
@@ -640,9 +640,7 @@ struct sysentvec elf_linux_sysvec = {
 	.sv_setregs	= linux_exec_setregs,
 	.sv_fixlimit	= NULL,
 	.sv_maxssiz	= NULL,
-	.sv_flags	= SV_ABI_LINUX | SV_ILP32 | SV_SHP |
-	    SV_SIG_DISCIGN | SV_SIG_WAITNDQ | SV_TIMEKEEP |
-	    SV_PERSISTENT_CTTY,
+	.sv_flags	= SV_ABI_LINUX_FLAGS | SV_ILP32,
 	.sv_set_syscall_retval = linux_set_syscall_retval,
 	.sv_fetch_syscall_args = linux_fetch_syscall_args,
 	.sv_syscallnames = NULL,
diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h
index fb78342831e1..05c1074fde70 100644
--- a/sys/sys/sysent.h
+++ b/sys/sys/sysent.h
@@ -189,6 +189,8 @@ struct sysentvec {
 
 #define	SV_ABI_FREEBSD_FLAGS	(SV_ABI_FREEBSD | SV_ASLR | SV_SHP | \
     SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS)
+#define	SV_ABI_LINUX_FLAGS	(SV_ABI_LINUX | SV_SHP | SV_SIG_DISCIGN | \
+    SV_SIG_WAITNDQ | SV_TIMEKEEP | SV_PERSISTENT_CTTY)
 
 /* sv_coredump flags */
 #define	SVC_PT_COREDUMP	0x00000001	/* dump requested by ptrace(2) */