From patchwork Mon Apr 16 20:41:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aurelien Jarno X-Patchwork-Id: 26760 Received: (qmail 130845 invoked by alias); 16 Apr 2018 20:41:53 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 130824 invoked by uid 89); 16 Apr 2018 20:41:53 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.9 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_LAZY_DOMAIN_SECURITY autolearn=ham version=3.3.2 spammy=H*r:2001 X-Spam-User: qpsmtpd, 2 recipients X-HELO: hall.aurel32.net From: Aurelien Jarno To: libc-alpha@sourceware.org Cc: libc-stable@sourceware.org, DJ Delorie , Andrew Waterman , Darius Rad , Palmer Dabbelt , Aurelien Jarno Subject: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069] Date: Mon, 16 Apr 2018 22:41:32 +0200 Message-Id: <20180416204132.9251-1-aurelien@aurel32.net> The RISC-V kernel doesn't define SA_RESTORER, hence the kernel version of struct sigaction doesn't have the sa_restorer field. The default kernel_sigaction.h therefore can't be used. This patch adds a RISC-V specific version of kernel_sigaction.h to fix the issue. This fixes for example the libnih testsuite. Note that this patch is not needed in master as the bug has been fixed by commit b4a5d26d8835 ("linux: Consolidate sigaction implementation"). --- ChangeLog | 5 +++++ sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h | 7 +++++++ 2 files changed, 12 insertions(+) create mode 100644 sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h diff --git a/ChangeLog b/ChangeLog index 536fcf1c4f..f365475a47 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-04-16 Aurelien Jarno + + [BZ #23069] + * sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h: New file. + 2018-03-29 Florian Weimer * sysdeps/unix/sysv/linux/i386/tst-bz21269.c (do_test): Also diff --git a/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h b/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h new file mode 100644 index 0000000000..2a62bcc5bc --- /dev/null +++ b/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h @@ -0,0 +1,7 @@ +/* This is the sigaction structure from the RISC-V Linux 4.15 kernel. */ + +struct kernel_sigaction { + __sighandler_t k_sa_handler; + unsigned long sa_flags; + sigset_t sa_mask; +};