diff mbox series

[for-7.1?] linux-user/riscv: Align signal frame to 16 bytes

Message ID 20220729201942.30738-1-richard.henderson@linaro.org
State Accepted
Commit 1eaa63429a9944265c92efdb94c02fabb231f564
Headers show
Series [for-7.1?] linux-user/riscv: Align signal frame to 16 bytes | expand

Commit Message

Richard Henderson July 29, 2022, 8:19 p.m. UTC
Follow the kernel's alignment, as we already noted.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1093
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 linux-user/riscv/signal.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Alistair Francis Aug. 1, 2022, 7:29 a.m. UTC | #1
On Sat, Jul 30, 2022 at 6:19 AM Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Follow the kernel's alignment, as we already noted.
>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1093
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  linux-user/riscv/signal.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/linux-user/riscv/signal.c b/linux-user/riscv/signal.c
> index 296e39fbf0..eaa168199a 100644
> --- a/linux-user/riscv/signal.c
> +++ b/linux-user/riscv/signal.c
> @@ -64,9 +64,7 @@ static abi_ulong get_sigframe(struct target_sigaction *ka,
>
>      /* This is the X/Open sanctioned signal stack switching.  */
>      sp = target_sigsp(sp, ka) - framesize;
> -
> -    /* XXX: kernel aligns with 0xf ? */
> -    sp &= ~3UL; /* align sp on 4-byte boundary */
> +    sp &= ~0xf;
>
>      return sp;
>  }
> --
> 2.34.1
>
>
Alistair Francis Aug. 1, 2022, 11:01 p.m. UTC | #2
On Sat, Jul 30, 2022 at 6:19 AM Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Follow the kernel's alignment, as we already noted.
>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1093
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

Thanks!

Applied to riscv-to-apply.next

Alistair

> ---
>  linux-user/riscv/signal.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/linux-user/riscv/signal.c b/linux-user/riscv/signal.c
> index 296e39fbf0..eaa168199a 100644
> --- a/linux-user/riscv/signal.c
> +++ b/linux-user/riscv/signal.c
> @@ -64,9 +64,7 @@ static abi_ulong get_sigframe(struct target_sigaction *ka,
>
>      /* This is the X/Open sanctioned signal stack switching.  */
>      sp = target_sigsp(sp, ka) - framesize;
> -
> -    /* XXX: kernel aligns with 0xf ? */
> -    sp &= ~3UL; /* align sp on 4-byte boundary */
> +    sp &= ~0xf;
>
>      return sp;
>  }
> --
> 2.34.1
>
>
diff mbox series

Patch

diff --git a/linux-user/riscv/signal.c b/linux-user/riscv/signal.c
index 296e39fbf0..eaa168199a 100644
--- a/linux-user/riscv/signal.c
+++ b/linux-user/riscv/signal.c
@@ -64,9 +64,7 @@  static abi_ulong get_sigframe(struct target_sigaction *ka,
 
     /* This is the X/Open sanctioned signal stack switching.  */
     sp = target_sigsp(sp, ka) - framesize;
-
-    /* XXX: kernel aligns with 0xf ? */
-    sp &= ~3UL; /* align sp on 4-byte boundary */
+    sp &= ~0xf;
 
     return sp;
 }