aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2005-04-13 14:18:04 -0400
committerRalf Baechle <ralf@linux-mips.org>2005-10-29 14:31:06 -0400
commit1fcf1cc742d01f786cda619fd49450b77b09e8c5 (patch)
tree0ae42177bac0a65a0b71c9c66d2591ef32215f21
parent3c37026d43c47bec4710cbda286f4a17f416f5e6 (diff)
We pass a kernel pointer to do_sigaltstack in sys32_sigaltstack, so
we need to do the set_fs(KERNEL_DS) thing around this call. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/kernel/signal32.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c
index e8c380dceb86..5e7d0fa02672 100644
--- a/arch/mips/kernel/signal32.c
+++ b/arch/mips/kernel/signal32.c
@@ -488,6 +488,7 @@ __attribute_used__ noinline static void
488_sys32_rt_sigreturn(nabi_no_regargs struct pt_regs regs) 488_sys32_rt_sigreturn(nabi_no_regargs struct pt_regs regs)
489{ 489{
490 struct rt_sigframe32 *frame; 490 struct rt_sigframe32 *frame;
491 mm_segment_t old_fs;
491 sigset_t set; 492 sigset_t set;
492 stack_t st; 493 stack_t st;
493 s32 sp; 494 s32 sp;
@@ -518,7 +519,10 @@ _sys32_rt_sigreturn(nabi_no_regargs struct pt_regs regs)
518 519
519 /* It is more difficult to avoid calling this function than to 520 /* It is more difficult to avoid calling this function than to
520 call it and ignore errors. */ 521 call it and ignore errors. */
522 old_fs = get_fs();
523 set_fs (KERNEL_DS);
521 do_sigaltstack(&st, NULL, regs.regs[29]); 524 do_sigaltstack(&st, NULL, regs.regs[29]);
525 set_fs (old_fs);
522 526
523 /* 527 /*
524 * Don't let your children do this ... 528 * Don't let your children do this ...