Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1fcf1cc7 authored by Ralf Baechle's avatar Ralf Baechle
Browse files

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: default avatarRalf Baechle <ralf@linux-mips.org>
parent 3c37026d
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -488,6 +488,7 @@ __attribute_used__ noinline static void
_sys32_rt_sigreturn(nabi_no_regargs struct pt_regs regs)
{
	struct rt_sigframe32 *frame;
	mm_segment_t old_fs;
	sigset_t set;
	stack_t st;
	s32 sp;
@@ -518,7 +519,10 @@ _sys32_rt_sigreturn(nabi_no_regargs struct pt_regs regs)

	/* It is more difficult to avoid calling this function than to
	   call it and ignore errors.  */
	old_fs = get_fs();
	set_fs (KERNEL_DS);
	do_sigaltstack(&st, NULL, regs.regs[29]);
	set_fs (old_fs);

	/*
	 * Don't let your children do this ...