Module Name: src
Committed By: martin
Date: Fri Mar 29 19:39:06 UTC 2019
Modified Files:
src/sys/arch/amd64/include [netbsd-8]: param.h
Log Message:
Pull up following revision(s) (requested by rin in ticket #1220):
sys/arch/amd64/include/param.h: revision 1.30
Bump STACK_ALIGNBYTES to (16 - 1) to satisfy requirement by AMD64
System V ABI in kernel level. This is because
(1) for LLDB, we want to bypass libc/csu (and therefore manual stack
alignment in _start), and
(2) rtld in glibc >= 2.23 for Linux/x86_64 requires it.
Fix SEGV for Linux/x86_64 binaries with glibc >= 2.23, reported as
PR port-amd64/54052.
To generate a diff of this commit:
cvs rdiff -u -r1.21.6.3 -r1.21.6.4 src/sys/arch/amd64/include/param.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/amd64/include/param.h
diff -u src/sys/arch/amd64/include/param.h:1.21.6.3 src/sys/arch/amd64/include/param.h:1.21.6.4
--- src/sys/arch/amd64/include/param.h:1.21.6.3 Wed Apr 11 14:43:23 2018
+++ src/sys/arch/amd64/include/param.h Fri Mar 29 19:39:06 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: param.h,v 1.21.6.3 2018/04/11 14:43:23 martin Exp $ */
+/* $NetBSD: param.h,v 1.21.6.4 2019/03/29 19:39:06 martin Exp $ */
#ifdef __x86_64__
@@ -19,6 +19,13 @@
#define ALIGNED_POINTER(p,t) 1
+/*
+ * Align stack as required by AMD64 System V ABI. This is because
+ * (1) we want to bypass libc/csu in LLDB, and
+ * (2) rtld in glibc >= 2.23 for Linux/x86_64 requires it.
+ */
+#define STACK_ALIGNBYTES (16 - 1)
+
#define ALIGNBYTES32 (sizeof(int) - 1)
#define ALIGN32(p) (((u_long)(p) + ALIGNBYTES32) &~ALIGNBYTES32)