aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel
diff options
context:
space:
mode:
authorHarvey Harrison <harvey.harrison@gmail.com>2008-02-08 15:10:00 -0500
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:40:46 -0400
commit2d19c4580682511be1eadf47cdee22d5eb002f94 (patch)
treed0445fa1d44eccd27253c2a719e0ab53e61a8b32 /arch/x86/kernel
parent1a1768039c8fdd48d69a6bc3b7f56943b2b20567 (diff)
x86: use sizeof(long) to unify signal_32|64.c
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: Roland McGrath <roland@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r--arch/x86/kernel/signal_32.c5
-rw-r--r--arch/x86/kernel/signal_64.c8
2 files changed, 6 insertions, 7 deletions
diff --git a/arch/x86/kernel/signal_32.c b/arch/x86/kernel/signal_32.c
index 9eb23fb66b1e..47c85e6b14bb 100644
--- a/arch/x86/kernel/signal_32.c
+++ b/arch/x86/kernel/signal_32.c
@@ -214,11 +214,12 @@ badframe:
214 214
215asmlinkage int sys_rt_sigreturn(unsigned long __unused) 215asmlinkage int sys_rt_sigreturn(unsigned long __unused)
216{ 216{
217 struct pt_regs *regs = (struct pt_regs *) &__unused; 217 struct pt_regs *regs = (struct pt_regs *)&__unused;
218 struct rt_sigframe __user *frame = (struct rt_sigframe __user *)(regs->sp - 4); 218 struct rt_sigframe __user *frame;
219 sigset_t set; 219 sigset_t set;
220 int ax; 220 int ax;
221 221
222 frame = (struct rt_sigframe __user *)(regs->sp - sizeof(long));
222 if (!access_ok(VERIFY_READ, frame, sizeof(*frame))) 223 if (!access_ok(VERIFY_READ, frame, sizeof(*frame)))
223 goto badframe; 224 goto badframe;
224 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set))) 225 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set)))
diff --git a/arch/x86/kernel/signal_64.c b/arch/x86/kernel/signal_64.c
index b7d7a6d5c26b..1045a07eeaec 100644
--- a/arch/x86/kernel/signal_64.c
+++ b/arch/x86/kernel/signal_64.c
@@ -133,13 +133,11 @@ asmlinkage long sys_rt_sigreturn(struct pt_regs *regs)
133 sigset_t set; 133 sigset_t set;
134 unsigned long ax; 134 unsigned long ax;
135 135
136 frame = (struct rt_sigframe __user *)(regs->sp - 8); 136 frame = (struct rt_sigframe __user *)(regs->sp - sizeof(long));
137 if (!access_ok(VERIFY_READ, frame, sizeof(*frame))) { 137 if (!access_ok(VERIFY_READ, frame, sizeof(*frame)))
138 goto badframe; 138 goto badframe;
139 } 139 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set)))
140 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set))) {
141 goto badframe; 140 goto badframe;
142 }
143 141
144 sigdelsetmask(&set, ~_BLOCKABLE); 142 sigdelsetmask(&set, ~_BLOCKABLE);
145 spin_lock_irq(&current->sighand->siglock); 143 spin_lock_irq(&current->sighand->siglock);