On Sat, Sep 10, 2022 at 4:01 AM Mathieu Desnoyers[
A friendly ping after 1.5 year about the fact that the selftests code isI would send the 1st version of patchset before 2022/10/30, or just
still missing for the csky architecture. So there is no way to validate
that the kernel pieces that were merged actually work on that architecture.
What is the timeline for contribution of the missing bits needed to enable
those tests ?
revert it from csky.
1. a patch for fixup the bug:
diff --git a/arch/csky/kernel/signal.c b/arch/csky/kernel/signal.c
index b7b3685283d7..434dcf2e8e37 100644
--- a/arch/csky/kernel/signal.c
+++ b/arch/csky/kernel/signal.c
@@ -179,8 +179,6 @@ static void handle_signal(struct ksignal *ksig,
struct pt_regs *regs)
sigset_t *oldset = sigmask_to_save();
int ret;
- rseq_signal_deliver(ksig, regs);
-
/* Are we from a system call? */
if (in_syscall(regs)) {
/* Avoid additional syscall restarting via ret_from_exception */
@@ -206,6 +204,8 @@ static void handle_signal(struct ksignal *ksig,
struct pt_regs *regs)
}
}
+ rseq_signal_deliver(ksig, regs);
+
/* Set up the stack frame */
ret = setup_rt_frame(ksig, oldset, regs);
2. Add tools/testing/selftests/rseq/rseq-csky* codes.
Here are the required header files:
tools/testing/selftests/rseq/rseq-csky.h
tools/testing/selftests/rseq/rseq-csky-thread-pointer.h (only if __builtin_thread_pointer is not implemented by gcc)
I'm open to suggestions from other rseq co-maintainers on how to best address
this situation.
Thanks,
Mathieu
--
Mathieu Desnoyers
EfficiOS Inc.
https://www.efficios.com