diff mbox series

[for,4.1,v2] linux-user: Fix structure target_ucontext for MIPS

Message ID 1562931470-3700-2-git-send-email-aleksandar.markovic@rt-rk.com
State New
Headers show
Series [for,4.1,v2] linux-user: Fix structure target_ucontext for MIPS | expand

Commit Message

Aleksandar Markovic July 12, 2019, 11:37 a.m. UTC
From: Aleksandar Markovic <amarkovic@wavecomp.com>

Structure ucontext for MIPS is defined in the following way in
Linux kernel:

(arch/mips/include/uapi/asm/ucontext.h, lines 54-64)

struct ucontext {
    /* Historic fields matching asm-generic */
    unsigned long       uc_flags;
    struct ucontext     *uc_link;
    stack_t             uc_stack;
    struct sigcontext   uc_mcontext;
    sigset_t            uc_sigmask;

    /* Extended context structures may follow ucontext */
    unsigned long long	uc_extcontext[0];
};

Fix the structure target_ucontext for MIPS to reflect the definition
above, except the correction for field uc_extcontext, which will
follow at some later time.

Fixes: 94c5495d

Reported-by: Dragan Mladjenovic <dmladjenovic@wavecomp.com>
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>

---

v2: rectified a commit message mistake with
    s/target_sigset_t/target_ucontext
---
 linux-user/mips/signal.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Laurent Vivier July 12, 2019, 1:26 p.m. UTC | #1
Le 12/07/2019 à 13:37, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <amarkovic@wavecomp.com>
> 
> Structure ucontext for MIPS is defined in the following way in
> Linux kernel:
> 
> (arch/mips/include/uapi/asm/ucontext.h, lines 54-64)
> 
> struct ucontext {
>     /* Historic fields matching asm-generic */
>     unsigned long       uc_flags;
>     struct ucontext     *uc_link;
>     stack_t             uc_stack;
>     struct sigcontext   uc_mcontext;
>     sigset_t            uc_sigmask;
> 
>     /* Extended context structures may follow ucontext */
>     unsigned long long	uc_extcontext[0];
> };
> 
> Fix the structure target_ucontext for MIPS to reflect the definition
> above, except the correction for field uc_extcontext, which will
> follow at some later time.
> 
> Fixes: 94c5495d
> 
> Reported-by: Dragan Mladjenovic <dmladjenovic@wavecomp.com>
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Reviewed-by: Laurent Vivier <laurent@vivier.eu>
> 
> ---
> 
> v2: rectified a commit message mistake with
>     s/target_sigset_t/target_ucontext
> ---
>  linux-user/mips/signal.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/linux-user/mips/signal.c b/linux-user/mips/signal.c
> index 6aa303e..455a8a2 100644
> --- a/linux-user/mips/signal.c
> +++ b/linux-user/mips/signal.c
> @@ -71,10 +71,9 @@ struct sigframe {
>  };
>  
>  struct target_ucontext {
> -    target_ulong tuc_flags;
> -    target_ulong tuc_link;
> +    abi_ulong tuc_flags;
> +    abi_ulong tuc_link;
>      target_stack_t tuc_stack;
> -    target_ulong pad0;
>      struct target_sigcontext tuc_mcontext;
>      target_sigset_t tuc_sigmask;
>  };
> 

Applied to my linux-user branch.

Thanks,
Laurent
diff mbox series

Patch

diff --git a/linux-user/mips/signal.c b/linux-user/mips/signal.c
index 6aa303e..455a8a2 100644
--- a/linux-user/mips/signal.c
+++ b/linux-user/mips/signal.c
@@ -71,10 +71,9 @@  struct sigframe {
 };
 
 struct target_ucontext {
-    target_ulong tuc_flags;
-    target_ulong tuc_link;
+    abi_ulong tuc_flags;
+    abi_ulong tuc_link;
     target_stack_t tuc_stack;
-    target_ulong pad0;
     struct target_sigcontext tuc_mcontext;
     target_sigset_t tuc_sigmask;
 };