diff options
| author | Richard Henderson <richard.henderson@linaro.org> | 2021-07-06 15:49:50 -0700 |
|---|---|---|
| committer | Richard Henderson <richard.henderson@linaro.org> | 2023-10-30 13:41:55 -0700 |
| commit | 468c1bb5cac9fc91fb6e7d94d65a99810f1e029c (patch) | |
| tree | 22f8795ac875fadb6db15fb9142bb32ee049f7d9 /linux-user/riscv/signal.c | |
| parent | c7bc2a8fb14650264ada7012af59d87207da590f (diff) | |
| download | focaccia-qemu-468c1bb5cac9fc91fb6e7d94d65a99810f1e029c.tar.gz focaccia-qemu-468c1bb5cac9fc91fb6e7d94d65a99810f1e029c.zip | |
linux-user/riscv: Add vdso
Acked-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'linux-user/riscv/signal.c')
| -rw-r--r-- | linux-user/riscv/signal.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/linux-user/riscv/signal.c b/linux-user/riscv/signal.c index f989f7f51f..941eadce87 100644 --- a/linux-user/riscv/signal.c +++ b/linux-user/riscv/signal.c @@ -21,6 +21,7 @@ #include "user-internals.h" #include "signal-common.h" #include "linux-user/trace.h" +#include "vdso-asmoffset.h" /* Signal handler invocation must be transparent for the code being interrupted. Complete CPU (hart) state is saved on entry and restored @@ -37,6 +38,8 @@ struct target_sigcontext { uint32_t fcsr; }; /* cf. riscv-linux:arch/riscv/include/uapi/asm/ptrace.h */ +QEMU_BUILD_BUG_ON(offsetof(struct target_sigcontext, fpr) != offsetof_freg0); + struct target_ucontext { abi_ulong uc_flags; abi_ptr uc_link; @@ -51,6 +54,11 @@ struct target_rt_sigframe { struct target_ucontext uc; }; +QEMU_BUILD_BUG_ON(sizeof(struct target_rt_sigframe) + != sizeof_rt_sigframe); +QEMU_BUILD_BUG_ON(offsetof(struct target_rt_sigframe, uc.uc_mcontext) + != offsetof_uc_mcontext); + static abi_ulong get_sigframe(struct target_sigaction *ka, CPURISCVState *regs, size_t framesize) { |