Module Name: src
Committed By: uebayasi
Date: Mon May 12 13:49:24 UTC 2014
Modified Files:
src/sys/arch/amd64/amd64: machdep.c
Log Message:
Don't reserve space (128) on signal stack for unknown reasons; the actual
space for struct sigframe_siginfo (+ alignment) is allocated just below.
Confirmed by the following tests:
tests/lib/libc/gen/t_siginfo
tests/lib/libc/sys/t_sigtimedwait
tests/lib/libc/sys/t_sigaction
tests/lib/libc/sys/t_sigqueue
To generate a diff of this commit:
cvs rdiff -u -r1.208 -r1.209 src/sys/arch/amd64/amd64/machdep.c
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/amd64/machdep.c
diff -u src/sys/arch/amd64/amd64/machdep.c:1.208 src/sys/arch/amd64/amd64/machdep.c:1.209
--- src/sys/arch/amd64/amd64/machdep.c:1.208 Mon May 12 09:01:34 2014
+++ src/sys/arch/amd64/amd64/machdep.c Mon May 12 13:49:24 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: machdep.c,v 1.208 2014/05/12 09:01:34 uebayasi Exp $ */
+/* $NetBSD: machdep.c,v 1.209 2014/05/12 13:49:24 uebayasi Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998, 2000, 2006, 2007, 2008, 2011
@@ -111,7 +111,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.208 2014/05/12 09:01:34 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.209 2014/05/12 13:49:24 uebayasi Exp $");
/* #define XENDEBUG_LOW */
@@ -563,7 +563,7 @@ sendsig_siginfo(const ksiginfo_t *ksi, c
if (onstack)
sp = ((char *)l->l_sigstk.ss_sp + l->l_sigstk.ss_size);
else
- sp = (char *)tf->tf_rsp - 128;
+ sp = (char *)tf->tf_rsp;
sp -= sizeof(struct sigframe_siginfo);
/* Round down the stackpointer to a multiple of 16 for the ABI. */