x86_32,signal: Fix vdso rt_sigreturn
diff mbox series

Message ID 1eb40ad923acde2e18357ef2832867432e70ac42.1403361010.git.luto@amacapital.net
State New, archived
Headers show
Series
  • x86_32,signal: Fix vdso rt_sigreturn
Related show

Commit Message

Andy Lutomirski June 21, 2014, 2:31 p.m. UTC
This commit:

    commit 6f121e548f83674ab4920a4e60afb58d4f61b829
    Author: Andy Lutomirski <luto@amacapital.net>
    Date:   Mon May 5 12:19:34 2014 -0700

        x86, vdso: Reimplement vdso.so preparation in build-time C

Contained this obvious typo:

-               restorer = VDSO32_SYMBOL(current->mm->context.vdso, rt_sigreturn);
+               restorer = current->mm->context.vdso +
+                       selected_vdso32->sym___kernel_sigreturn;

Note the missing 'rt_' in the new code.  Fix it.

Signed-off-by: Andy Lutomirski <luto@amacapital.net>
---

Compile-tested only.  I bet that someone will test it here far more quickly
than I can figure out how to test it:

https://bugzilla.redhat.com/show_bug.cgi?id=1110968

 arch/x86/kernel/signal.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Andy Lutomirski June 21, 2014, 3:43 p.m. UTC | #1
On Sat, Jun 21, 2014 at 7:31 AM, Andy Lutomirski <luto@amacapital.net> wrote:
> This commit:
>
>     commit 6f121e548f83674ab4920a4e60afb58d4f61b829
>     Author: Andy Lutomirski <luto@amacapital.net>
>     Date:   Mon May 5 12:19:34 2014 -0700
>
>         x86, vdso: Reimplement vdso.so preparation in build-time C
>
> Contained this obvious typo:
>
> -               restorer = VDSO32_SYMBOL(current->mm->context.vdso, rt_sigreturn);
> +               restorer = current->mm->context.vdso +
> +                       selected_vdso32->sym___kernel_sigreturn;
>
> Note the missing 'rt_' in the new code.  Fix it.
>
> Signed-off-by: Andy Lutomirski <luto@amacapital.net>
> ---
>
> Compile-tested only.  I bet that someone will test it here far more quickly
> than I can figure out how to test it:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1110968

Tested now at the link above.

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Patch
diff mbox series

diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
index a0da58d..2851d63 100644
--- a/arch/x86/kernel/signal.c
+++ b/arch/x86/kernel/signal.c
@@ -363,7 +363,7 @@  static int __setup_rt_frame(int sig, struct ksignal *ksig,
 
 		/* Set up to return from userspace.  */
 		restorer = current->mm->context.vdso +
-			selected_vdso32->sym___kernel_sigreturn;
+			selected_vdso32->sym___kernel_rt_sigreturn;
 		if (ksig->ka.sa.sa_flags & SA_RESTORER)
 			restorer = ksig->ka.sa.sa_restorer;
 		put_user_ex(restorer, &frame->pretcode);