[PATCH v3 39/87] linux-user/loongarch64: Create target_ptrace.h

Richard Henderson posted 87 patches 1 month ago
[PATCH v3 39/87] linux-user/loongarch64: Create target_ptrace.h
Posted by Richard Henderson 1 month ago
Remove the target_pt_regs structure from target_syscall.h.
Add target_user_pt_regs to target_ptrace.h, which matches
what is actually used on loongarch64.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 linux-user/loongarch64/target_ptrace.h  | 15 +++++++++++++++
 linux-user/loongarch64/target_syscall.h | 23 -----------------------
 2 files changed, 15 insertions(+), 23 deletions(-)
 create mode 100644 linux-user/loongarch64/target_ptrace.h

diff --git a/linux-user/loongarch64/target_ptrace.h b/linux-user/loongarch64/target_ptrace.h
new file mode 100644
index 0000000000..2578e09207
--- /dev/null
+++ b/linux-user/loongarch64/target_ptrace.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#ifndef LOONGARCH64_TARGET_PTRACE_H
+#define LOONGARCH64_TARGET_PTRACE_H
+
+/* See arch/loongarch/include/uapi/asm/ptrace.h. */
+struct target_user_pt_regs {
+    abi_ulong regs[32];
+    abi_ulong orig_a0;
+    abi_ulong csr_era;
+    abi_ulong csr_badv;
+    abi_ulong reserved[10];
+};
+
+#endif /* LOONGARCH64_TARGET_PTRACE_H */
diff --git a/linux-user/loongarch64/target_syscall.h b/linux-user/loongarch64/target_syscall.h
index 39f229bb9c..f7ced7b2be 100644
--- a/linux-user/loongarch64/target_syscall.h
+++ b/linux-user/loongarch64/target_syscall.h
@@ -8,29 +8,6 @@
 
 #include "qemu/units.h"
 
-/*
- * this struct defines the way the registers are stored on the
- * stack during a system call.
- */
-
-struct target_pt_regs {
-    /* Saved main processor registers. */
-    target_ulong regs[32];
-
-    /* Saved special registers. */
-    struct {
-        target_ulong era;
-        target_ulong badv;
-        target_ulong crmd;
-        target_ulong prmd;
-        target_ulong euen;
-        target_ulong ecfg;
-        target_ulong estat;
-    } csr;
-    target_ulong orig_a0;
-    target_ulong __last[0];
-};
-
 #define UNAME_MACHINE "loongarch64"
 #define UNAME_MINIMUM_RELEASE "5.19.0"
 
-- 
2.43.0
Re: [PATCH v3 39/87] linux-user/loongarch64: Create target_ptrace.h
Posted by Peter Maydell 1 month ago
On Thu, 28 Aug 2025 at 13:10, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Remove the target_pt_regs structure from target_syscall.h.
> Add target_user_pt_regs to target_ptrace.h, which matches
> what is actually used on loongarch64.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  linux-user/loongarch64/target_ptrace.h  | 15 +++++++++++++++
>  linux-user/loongarch64/target_syscall.h | 23 -----------------------
>  2 files changed, 15 insertions(+), 23 deletions(-)
>  create mode 100644 linux-user/loongarch64/target_ptrace.h
>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM