[1/2] fix risc64 conflict with kernel headers

Submitted by Baruch Siach on Aug. 6, 2019, 5:51 a.m.

Details

Message ID 63f4c551e85a848e336f41539b6dd283396eeda7.1565070674.git.baruch@tkos.co.il
State New
Series "Series without cover letter"
Headers show

Commit Message

Baruch Siach Aug. 6, 2019, 5:51 a.m.
Rename user registers struct definitions to avoid conflict with the
asm/ptrace.h kernel header that defines the same structs. Use the
__riscv_mc prefix as glibc does.
---
 arch/riscv64/bits/signal.h | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

Patch hide | download patch | download mbox

diff --git a/arch/riscv64/bits/signal.h b/arch/riscv64/bits/signal.h
index 4c94a8f02edc..76d7ad80c8cd 100644
--- a/arch/riscv64/bits/signal.h
+++ b/arch/riscv64/bits/signal.h
@@ -12,29 +12,29 @@ 
 typedef unsigned long greg_t;
 typedef unsigned long gregset_t[32];
 
-struct __riscv_f_ext_state {
+struct __riscv_mc_f_ext_state {
 	unsigned int f[32];
 	unsigned int fcsr;
 };
 
-struct __riscv_d_ext_state {
+struct __riscv_mc_d_ext_state {
 	unsigned long long f[32];
 	unsigned int fcsr;
 };
 
-struct __riscv_q_ext_state {
+struct __riscv_mc_q_ext_state {
 	unsigned long long f[64] __attribute__((aligned(16)));
 	unsigned int fcsr;
 	unsigned int reserved[3];
 };
 
-union __riscv_fp_state {
-	struct __riscv_f_ext_state f;
-	struct __riscv_d_ext_state d;
-	struct __riscv_q_ext_state q;
+union __riscv_mc_fp_state {
+	struct __riscv_mc_f_ext_state f;
+	struct __riscv_mc_d_ext_state d;
+	struct __riscv_mc_q_ext_state q;
 };
 
-typedef union __riscv_fp_state fpregset_t;
+typedef union __riscv_mc_fp_state fpregset_t;
 
 typedef struct sigcontext {
 	gregset_t gregs;

Comments

Rich Felker Aug. 6, 2019, 4:31 p.m.
On Tue, Aug 06, 2019 at 08:51:13AM +0300, Baruch Siach wrote:
> Rename user registers struct definitions to avoid conflict with the
> asm/ptrace.h kernel header that defines the same structs. Use the
> __riscv_mc prefix as glibc does.
> ---
>  arch/riscv64/bits/signal.h | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/riscv64/bits/signal.h b/arch/riscv64/bits/signal.h
> index 4c94a8f02edc..76d7ad80c8cd 100644
> --- a/arch/riscv64/bits/signal.h
> +++ b/arch/riscv64/bits/signal.h
> @@ -12,29 +12,29 @@
>  typedef unsigned long greg_t;
>  typedef unsigned long gregset_t[32];
>  
> -struct __riscv_f_ext_state {
> +struct __riscv_mc_f_ext_state {
>  	unsigned int f[32];
>  	unsigned int fcsr;
>  };
>  
> -struct __riscv_d_ext_state {
> +struct __riscv_mc_d_ext_state {
>  	unsigned long long f[32];
>  	unsigned int fcsr;
>  };
>  
> -struct __riscv_q_ext_state {
> +struct __riscv_mc_q_ext_state {
>  	unsigned long long f[64] __attribute__((aligned(16)));
>  	unsigned int fcsr;
>  	unsigned int reserved[3];
>  };
>  
> -union __riscv_fp_state {
> -	struct __riscv_f_ext_state f;
> -	struct __riscv_d_ext_state d;
> -	struct __riscv_q_ext_state q;
> +union __riscv_mc_fp_state {
> +	struct __riscv_mc_f_ext_state f;
> +	struct __riscv_mc_d_ext_state d;
> +	struct __riscv_mc_q_ext_state q;
>  };
>  
> -typedef union __riscv_fp_state fpregset_t;
> +typedef union __riscv_mc_fp_state fpregset_t;
>  
>  typedef struct sigcontext {
>  	gregset_t gregs;
> -- 
> 2.20.1

I confirmed this matches glibc. Applying.

Rich