kernel/x86_32-signal-Fix-vdso-rt_sigreturn.patch

103 lines
5.2 KiB
Diff
Raw Normal View History

Bugzilla: 1110968
Upstream-status: Sent for 3.16
Delivered-To: jwboyer@gmail.com
Received: by 10.76.6.212 with SMTP id d20csp498917oaa;
Sat, 21 Jun 2014 07:32:08 -0700 (PDT)
X-Received: by 10.68.222.196 with SMTP id qo4mr13568182pbc.14.1403361127771;
Sat, 21 Jun 2014 07:32:07 -0700 (PDT)
Return-Path: <luto@amacapital.net>
Received: from bastion.fedoraproject.org (bastion02.fedoraproject.org. [209.132.181.3])
by mx.google.com with ESMTP id lc8si14177597pab.180.2014.06.21.07.32.07
for <jwboyer@gmail.com>;
Sat, 21 Jun 2014 07:32:07 -0700 (PDT)
Received-SPF: softfail (google.com: domain of transitioning luto@amacapital.net does not designate 209.132.181.3 as permitted sender) client-ip=209.132.181.3;
Authentication-Results: mx.google.com;
spf=softfail (google.com: domain of transitioning luto@amacapital.net does not designate 209.132.181.3 as permitted sender) smtp.mail=luto@amacapital.net
Received: by bastion02.phx2.fedoraproject.org (Postfix)
id 168B1409CE; Sat, 21 Jun 2014 14:32:07 +0000 (UTC)
Delivered-To: jwboyer@fedoraproject.org
Received: from mx1.redhat.com (ext-mx13.extmail.prod.ext.phx2.redhat.com [10.5.110.18])
by bastion02.phx2.fedoraproject.org (Postfix) with ESMTP id D0C2F409C7
for <jwboyer@fedoraproject.org>; Sat, 21 Jun 2014 14:32:06 +0000 (UTC)
Received: from mail-pd0-f176.google.com (mail-pd0-f176.google.com [209.85.192.176])
by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s5LEW4FM005994
(version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL)
for <jwboyer@fedoraproject.org>; Sat, 21 Jun 2014 10:32:05 -0400
Received: by mail-pd0-f176.google.com with SMTP id ft15so3955970pdb.7
for <jwboyer@fedoraproject.org>; Sat, 21 Jun 2014 07:32:04 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20130820;
h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
:references;
bh=9ojFh7kYLbjyUNQqXEB1a+XYU5MXkJE3dfv8VGqmp7U=;
b=R90lfJ9+LPLahfLiaskJdqINOIulosFA5kTRA6zFncXdehLXlO1/bgzCbVSBQp0Zda
jH2JtoZFUe+cfg5kQTtnVhE+H5Z+J6zTGQy3vmlloZh5QOxVDtHZU85FKZWL4ME/teZD
4dHDVOmlO9zXrhRKLs6jdxQnKCJNCovWf5DVPe51OuwKKCwm49VmLTHaYkCox+vsVaGk
J5FG3Q7yxRpGwrhMvI3yWuhj5hxaAq+R+B7pk7xY1xrekBoah2W983/ZXUVYWcclOoi+
pw4ntIfVczLCLffVR4UmV4/Tf4SU/pzUHAwKoDzVG8E1JP4oxtBquCPMfm19ZM0lwStV
wgpw==
X-Gm-Message-State: ALoCoQlE1XpTJdEnv/MtB0QmbA8XP2ta23AV4hVoUU4182Z6n5xs9NiTKRJfyIbepTPOiKzLFr/I
X-Received: by 10.68.132.42 with SMTP id or10mr13559986pbb.80.1403361124560;
Sat, 21 Jun 2014 07:32:04 -0700 (PDT)
Received: from localhost (pool-108-13-237-90.lsanca.fios.verizon.net. [108.13.237.90])
by mx.google.com with ESMTPSA id ak1sm18452139pbc.58.2014.06.21.07.32.02
for <multiple recipients>
(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Sat, 21 Jun 2014 07:32:03 -0700 (PDT)
From: Andy Lutomirski <luto@amacapital.net>
To: Josh Boyer <jwboyer@fedoraproject.org>, "H. Peter Anvin" <hpa@zytor.com>
Cc: "Linux-Kernel@Vger. Kernel. Org" <linux-kernel@vger.kernel.org>,
Andy Lutomirski <luto@amacapital.net>
Subject: [PATCH] x86_32,signal: Fix vdso rt_sigreturn
Date: Sat, 21 Jun 2014 07:31:55 -0700
Message-Id: <1eb40ad923acde2e18357ef2832867432e70ac42.1403361010.git.luto@amacapital.net>
X-Mailer: git-send-email 1.9.3
In-Reply-To: <CA+5PVA61wwmnstiBdDemufGvXvSu4RL3WHds3NSstH-rVx7tYg@mail.gmail.com>
References: <CA+5PVA61wwmnstiBdDemufGvXvSu4RL3WHds3NSstH-rVx7tYg@mail.gmail.com>
X-RedHat-Spam-Score: -2.011 (BAYES_00,DCC_REPUT_13_19,RCVD_IN_DNSWL_NONE,SPF_PASS)
X-Scanned-By: MIMEDefang 2.68 on 10.5.110.18
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(-)
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);
--
1.9.3