From 680995ac4be045826d2050f9105c70a10db4a66f Mon Sep 17 00:00:00 2001 From: Palmer Dabbelt Date: Wed, 20 Jan 2016 11:35:52 -0800 Subject: Bump linux-headers These are cached from riscv-linux and have gotten out of date. The breaking change was in asm/ptrace.h, but riscv-linux also got bumped so this is a big commit. This syncs from e1c1614e7bd2e053e88d0cb875e1a22b27df6e39 in riscv-linux. --- linux-headers/include/asm/ptrace.h | 54 ++++++++++++++++++++++++++++------ linux-headers/include/asm/setup.h | 1 - linux-headers/include/asm/sigcontext.h | 43 +++++---------------------- 3 files changed, 53 insertions(+), 45 deletions(-) (limited to 'linux-headers/include/asm') diff --git a/linux-headers/include/asm/ptrace.h b/linux-headers/include/asm/ptrace.h index 5e2fbb6..0167fe6 100644 --- a/linux-headers/include/asm/ptrace.h +++ b/linux-headers/include/asm/ptrace.h @@ -1,19 +1,55 @@ #ifndef _ASM_RISCV_PTRACE_H #define _ASM_RISCV_PTRACE_H -/* Mirror pt_regs from ptrace.h */ +#ifndef __ASSEMBLY__ -typedef struct user_regs_struct { +#include + +/* User-mode register state for core dumps, ptrace, sigcontext + * + * This decouples struct pt_regs from the userspace ABI. + * struct user_regs_struct must form a prefix of struct pt_regs. + */ +struct user_regs_struct { unsigned long pc; unsigned long ra; - unsigned long s[12]; unsigned long sp; - unsigned long tp; - unsigned long v[2]; - unsigned long a[8]; - unsigned long t[5]; unsigned long gp; - unsigned long status; -} user_regs_struct; + unsigned long tp; + unsigned long t0; + unsigned long t1; + unsigned long t2; + unsigned long s0; + unsigned long s1; + unsigned long a0; + unsigned long a1; + unsigned long a2; + unsigned long a3; + unsigned long a4; + unsigned long a5; + unsigned long a6; + unsigned long a7; + unsigned long s2; + unsigned long s3; + unsigned long s4; + unsigned long s5; + unsigned long s6; + unsigned long s7; + unsigned long s8; + unsigned long s9; + unsigned long s10; + unsigned long s11; + unsigned long t3; + unsigned long t4; + unsigned long t5; + unsigned long t6; +}; + +struct user_fpregs_struct { + __u64 f[32]; + __u32 fcsr; +}; + +#endif /* __ASSEMBLY__ */ #endif /* _ASM_RISCV_PTRACE_H */ diff --git a/linux-headers/include/asm/setup.h b/linux-headers/include/asm/setup.h index 8ee375d..2fa6777 100644 --- a/linux-headers/include/asm/setup.h +++ b/linux-headers/include/asm/setup.h @@ -1,7 +1,6 @@ #ifndef _ASM_RISCV_SETUP_H #define _ASM_RISCV_SETUP_H - #include #endif /* _ASM_RISCV_SETUP_H */ diff --git a/linux-headers/include/asm/sigcontext.h b/linux-headers/include/asm/sigcontext.h index c762962..1a65e11 100644 --- a/linux-headers/include/asm/sigcontext.h +++ b/linux-headers/include/asm/sigcontext.h @@ -1,43 +1,16 @@ #ifndef _ASM_RISCV_SIGCONTEXT_H #define _ASM_RISCV_SIGCONTEXT_H -/* This struct is saved by setup_frame in signal.c, to keep the current - * context while a signal handler is executed. It is restored by sys_sigreturn. - */ +#include +/* Signal context structure + * + * This contains the context saved before a signal handler is invoked; + * it is restored by sys_sigreturn / sys_rt_sigreturn. + */ struct sigcontext { - unsigned long epc; - unsigned long ra; - unsigned long sp; - unsigned long gp; - unsigned long tp; - unsigned long t0; - unsigned long t1; - unsigned long t2; - unsigned long s0; - unsigned long s1; - unsigned long a0; - unsigned long a1; - unsigned long a2; - unsigned long a3; - unsigned long a4; - unsigned long a5; - unsigned long a6; - unsigned long a7; - unsigned long s2; - unsigned long s3; - unsigned long s4; - unsigned long s5; - unsigned long s6; - unsigned long s7; - unsigned long s8; - unsigned long s9; - unsigned long s10; - unsigned long s11; - unsigned long t3; - unsigned long t4; - unsigned long t5; - unsigned long t6; + struct user_regs_struct sc_regs; + struct user_fpregs_struct sc_fpregs; }; #endif /* _ASM_RISCV_SIGCONTEXT_H */ -- cgit v1.1