From b763f6ae859ecea70a5dacb8ad45c71d5f667e2e Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Tue, 30 Sep 2014 12:41:11 +0200 Subject: [PATCH] aarch64: Increase MINSIGSTKSZ and SIGSTKSZ (bug 16850) --- ChangeLog | 5 ++ NEWS | 12 ++--- .../unix/sysv/linux/aarch64/bits/sigstack.h | 54 +++++++++++++++++++ 3 files changed, 65 insertions(+), 6 deletions(-) create mode 100644 sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h diff --git a/ChangeLog b/ChangeLog index c687d1356f..2a7f505a10 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-04-02 Andreas Schwab + + [BZ #16850] + * sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h: New file. + 2015-04-02 Mel Gorman [BZ #17195] diff --git a/NEWS b/NEWS index dec42d8a15..14d54d6217 100644 --- a/NEWS +++ b/NEWS @@ -10,12 +10,12 @@ Version 2.22 * The following bugs are resolved with this release: 4719, 13064, 14094, 14841, 14906, 15319, 15467, 15790, 15969, 16351, - 16512, 16560, 16783, 17090, 17195, 17269, 17523, 17542, 17569, 17588, - 17620, 17621, 17628, 17631, 17711, 17776, 17779, 17792, 17836, 17912, - 17916, 17932, 17944, 17949, 17964, 17965, 17967, 17969, 17978, 17987, - 17991, 17996, 17998, 17999, 18019, 18020, 18029, 18030, 18032, 18036, - 18038, 18039, 18042, 18043, 18046, 18047, 18068, 18080, 18093, 18100, - 18104, 18110, 18111, 18128, 18138, 18185. + 16512, 16560, 16783, 16850, 17090, 17195, 17269, 17523, 17542, 17569, + 17588, 17620, 17621, 17628, 17631, 17711, 17776, 17779, 17792, 17836, + 17912, 17916, 17932, 17944, 17949, 17964, 17965, 17967, 17969, 17978, + 17987, 17991, 17996, 17998, 17999, 18019, 18020, 18029, 18030, 18032, + 18036, 18038, 18039, 18042, 18043, 18046, 18047, 18068, 18080, 18093, + 18100, 18104, 18110, 18111, 18128, 18138, 18185. * A powerpc and powerpc64 optimization for TLS, similar to TLS descriptors for LD and GD on x86 and x86-64, has been implemented. You will need diff --git a/sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h b/sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h new file mode 100644 index 0000000000..8f2fb76e3e --- /dev/null +++ b/sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h @@ -0,0 +1,54 @@ +/* sigstack, sigaltstack definitions. + Copyright (C) 2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SIGNAL_H +# error "Never include this file directly. Use instead" +#endif + + +/* Structure describing a signal stack (obsolete). */ +struct sigstack + { + void *ss_sp; /* Signal stack pointer. */ + int ss_onstack; /* Nonzero if executing on this stack. */ + }; + + +/* Possible values for `ss_flags.'. */ +enum +{ + SS_ONSTACK = 1, +#define SS_ONSTACK SS_ONSTACK + SS_DISABLE +#define SS_DISABLE SS_DISABLE +}; + +/* Minimum stack size for a signal handler. */ +#define MINSIGSTKSZ 5120 + +/* System default stack size. */ +#define SIGSTKSZ 16384 + + +/* Alternate, preferred interface. */ +typedef struct sigaltstack + { + void *ss_sp; + int ss_flags; + size_t ss_size; + } stack_t;