Commit 20d7338f authored by Thomas Weißschuh's avatar Thomas Weißschuh Committed by Huacai Chen
Browse files

LoongArch: Use UAPI types in ptrace UAPI header



The kernel UAPI headers already contain fixed-width integer types, there
is no need to rely on the libc types. There may not be a libc available
or the libc may not provides the <stdint.h>, like for example on nolibc.

This also aligns the header with the rest of the LoongArch UAPI headers.

Fixes: 803b0fc5 ("LoongArch: Add process management")
Signed-off-by: default avatarThomas Weißschuh <linux@weissschuh.net>
Signed-off-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
parent 6a23ae0a
Loading
Loading
Loading
Loading
+18 −22
Original line number Diff line number Diff line
@@ -10,10 +10,6 @@

#include <linux/types.h>

#ifndef __KERNEL__
#include <stdint.h>
#endif

/*
 * For PTRACE_{POKE,PEEK}USR. 0 - 31 are GPRs,
 * 32 is syscall's original ARG0, 33 is PC, 34 is BADVADDR.
@@ -41,44 +37,44 @@ struct user_pt_regs {
} __attribute__((aligned(8)));

struct user_fp_state {
	uint64_t fpr[32];
	uint64_t fcc;
	uint32_t fcsr;
	__u64 fpr[32];
	__u64 fcc;
	__u32 fcsr;
};

struct user_lsx_state {
	/* 32 registers, 128 bits width per register. */
	uint64_t vregs[32*2];
	__u64 vregs[32*2];
};

struct user_lasx_state {
	/* 32 registers, 256 bits width per register. */
	uint64_t vregs[32*4];
	__u64 vregs[32*4];
};

struct user_lbt_state {
	uint64_t scr[4];
	uint32_t eflags;
	uint32_t ftop;
	__u64 scr[4];
	__u32 eflags;
	__u32 ftop;
};

struct user_watch_state {
	uint64_t dbg_info;
	__u64 dbg_info;
	struct {
		uint64_t    addr;
		uint64_t    mask;
		uint32_t    ctrl;
		uint32_t    pad;
		__u64    addr;
		__u64    mask;
		__u32    ctrl;
		__u32    pad;
	} dbg_regs[8];
};

struct user_watch_state_v2 {
	uint64_t dbg_info;
	__u64 dbg_info;
	struct {
		uint64_t    addr;
		uint64_t    mask;
		uint32_t    ctrl;
		uint32_t    pad;
		__u64    addr;
		__u64    mask;
		__u32    ctrl;
		__u32    pad;
	} dbg_regs[14];
};