powerpc/uapi: Fix sigcontext definition to use user_pt_regs
authorMichael Ellerman <mpe@ellerman.id.au>
Mon, 15 Oct 2018 12:01:42 +0000 (23:01 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 19 Oct 2018 04:09:04 +0000 (15:09 +1100)
My recent patch to split pt_regs between user and kernel missed
the usage in struct sigcontext.

Because this is a user visible struct it should be using the user
visible definition, which when we're building for the kernel is called
struct user_pt_regs.

As far as I can see this hasn't actually caused a bug (yet), because
we don't use the sizeof() the sigcontext->regs anywhere. But we should
still fix it to avoid confusion and future bugs.

Fixes: 002af9391bfb ("powerpc: Split user/kernel definitions of struct pt_regs")
Reported-by: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/uapi/asm/sigcontext.h

index 2fbe485acdb4952843bfcfe06bd8ab931e820433..630aeda56d599f3f7857e3c7e0487d573dd88015 100644 (file)
@@ -22,7 +22,11 @@ struct sigcontext {
 #endif
        unsigned long   handler;
        unsigned long   oldmask;
-       struct pt_regs  __user *regs;
+#ifdef __KERNEL__
+       struct user_pt_regs __user *regs;
+#else
+       struct pt_regs  *regs;
+#endif
 #ifdef __powerpc64__
        elf_gregset_t   gp_regs;
        elf_fpregset_t  fp_regs;