[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/2] linux-user: sigaction fixes/cleanups
From: |
Richard Henderson |
Subject: |
[PATCH 0/2] linux-user: sigaction fixes/cleanups |
Date: |
Thu, 22 Apr 2021 11:08:17 -0700 |
Alpha had two bugs, one with the non-ka_restorer fallback
using the wrong offset, and the other with the ka_restorer
value getting lost in do_sigaction.
Because do_sigaction didn't see TARGET_ARCH_HAS_SA_RESTORER
(which is correct for alpha, as the field isn't present in
the structure), we didn't copy the field into our syscall
table. Which meant that the extra code present in do_syscall
to stash the ka_restorer value was wasted.
I believe that Sparc has a similar bug, but this one was
worse because it was modifying the user's sigaction struct
that was passed in.
r~
Richard Henderson (2):
linux-user/alpha: Fix rt sigframe return
linux-user: Clean up sigaction ka_restorer
linux-user/syscall_defs.h | 17 +++-----
linux-user/alpha/signal.c | 10 ++---
linux-user/signal.c | 4 +-
linux-user/syscall.c | 90 ++++++++++++---------------------------
4 files changed, 42 insertions(+), 79 deletions(-)
--
2.25.1
- [PATCH 0/2] linux-user: sigaction fixes/cleanups,
Richard Henderson <=