* Re: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
2018-01-01 0:00 [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069] Aurelien Jarno
2018-01-01 0:00 ` Joseph Myers
@ 2018-01-01 0:00 ` DJ Delorie
2018-01-01 0:00 ` Aurelien Jarno
2018-01-01 0:00 ` Dmitry V. Levin
2 siblings, 1 reply; 6+ messages in thread
From: DJ Delorie @ 2018-01-01 0:00 UTC (permalink / raw)
To: Aurelien Jarno; +Cc: libc-alpha, libc-stable, andrew, darius, palmer
Could the #ifdef from b4a5d26d8835's kernel_sigaction.h be backported
instead? It still wouldn't be a pristine backport (I'm not recommending
backporting *all* of b4a5d26d8835) but at least as branch-specific
'hack' it's closer to what's in master than a riscv-specific header.
Granted, this means a riscv-specific patch *might* affect other targets,
but if that's not an issue, I think something closer to master would be
preferred.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
2018-01-01 0:00 ` DJ Delorie
@ 2018-01-01 0:00 ` Aurelien Jarno
2018-01-01 0:00 ` DJ Delorie
0 siblings, 1 reply; 6+ messages in thread
From: Aurelien Jarno @ 2018-01-01 0:00 UTC (permalink / raw)
To: DJ Delorie; +Cc: libc-alpha, libc-stable, andrew, darius, palmer
On 2018-04-16 17:54, DJ Delorie wrote:
>
> Could the #ifdef from b4a5d26d8835's kernel_sigaction.h be backported
> instead? It still wouldn't be a pristine backport (I'm not recommending
> backporting *all* of b4a5d26d8835) but at least as branch-specific
> 'hack' it's closer to what's in master than a riscv-specific header.
We can backport that #ifdef from b4a5d26d8835, but it means we also need
to backport the new kernel_sigaction.h files for m68k, s390, sparc, tile
(if I haven't missed any), plus commit d8abfab7d46a to fix a regression
on s390.
So it seems more risky to me. Also note that this is not an installed
header, but just a compile time header.
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@aurel32.net http://www.aurel32.net
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
@ 2018-01-01 0:00 Aurelien Jarno
2018-01-01 0:00 ` Joseph Myers
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Aurelien Jarno @ 2018-01-01 0:00 UTC (permalink / raw)
To: libc-alpha
Cc: libc-stable, DJ Delorie, Andrew Waterman, Darius Rad,
Palmer Dabbelt, Aurelien Jarno
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 <aurelien@aurel32.net>
+
+ [BZ #23069]
+ * sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h: New file.
+
2018-03-29 Florian Weimer <fweimer@redhat.com>
* 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;
+};
--
2.16.3
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
2018-01-01 0:00 [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069] Aurelien Jarno
2018-01-01 0:00 ` Joseph Myers
2018-01-01 0:00 ` DJ Delorie
@ 2018-01-01 0:00 ` Dmitry V. Levin
2 siblings, 0 replies; 6+ messages in thread
From: Dmitry V. Levin @ 2018-01-01 0:00 UTC (permalink / raw)
To: Aurelien Jarno
Cc: libc-alpha, libc-stable, DJ Delorie, Andrew Waterman, Darius Rad,
Palmer Dabbelt
[-- Attachment #1: Type: text/plain, Size: 1772 bytes --]
On Mon, Apr 16, 2018 at 10:41:32PM +0200, Aurelien Jarno wrote:
> 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 <aurelien@aurel32.net>
> +
> + [BZ #23069]
> + * sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h: New file.
> +
> 2018-03-29 Florian Weimer <fweimer@redhat.com>
>
> * 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;
> +};
I think this is OK given that b4a5d26d8835 cannot be easily backported to 2.27.
--
ldv
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
2018-01-01 0:00 [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069] Aurelien Jarno
@ 2018-01-01 0:00 ` Joseph Myers
2018-01-01 0:00 ` DJ Delorie
2018-01-01 0:00 ` Dmitry V. Levin
2 siblings, 0 replies; 6+ messages in thread
From: Joseph Myers @ 2018-01-01 0:00 UTC (permalink / raw)
To: Aurelien Jarno
Cc: libc-alpha, libc-stable, DJ Delorie, Andrew Waterman, Darius Rad,
Palmer Dabbelt
On Mon, 16 Apr 2018, Aurelien Jarno wrote:
> 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.
I think there ought to be a relevant test added to the glibc testsuite (on
master and backported) if there isn't one already, unless it's hard to
test this issue for some reason.
--
Joseph S. Myers
joseph@codesourcery.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069]
2018-01-01 0:00 ` Aurelien Jarno
@ 2018-01-01 0:00 ` DJ Delorie
0 siblings, 0 replies; 6+ messages in thread
From: DJ Delorie @ 2018-01-01 0:00 UTC (permalink / raw)
To: Aurelien Jarno; +Cc: libc-alpha, libc-stable, andrew, darius, palmer
Aurelien Jarno <aurelien@aurel32.net> writes:
> So it seems more risky to me.
I agree.
> Also note that this is not an installed header, but just a compile
> time header.
So no user-visible ABI change, good. Ok with me then :-)
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-04-20 17:50 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-01 0:00 [PATCH 2.27] RISC-V: fix struct kernel_sigaction to match the kernel version [BZ #23069] Aurelien Jarno
2018-01-01 0:00 ` Joseph Myers
2018-01-01 0:00 ` DJ Delorie
2018-01-01 0:00 ` Aurelien Jarno
2018-01-01 0:00 ` DJ Delorie
2018-01-01 0:00 ` Dmitry V. Levin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).