Commit cb44c9a0 authored by Eric W. Biederman's avatar Eric W. Biederman
Browse files

signal: Remove task parameter from force_sigsegv



The function force_sigsegv is always called on the current task
so passing in current is redundant and not passing in current
makes this fact obvious.

This also makes it clear force_sigsegv always calls force_sig
on the current task.

Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent 72abe3bc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -313,7 +313,7 @@ int elf_check_arch(const struct elf32_hdr *x)
	eflags = x->e_flags;
	if ((eflags & EF_ARC_OSABI_MSK) != EF_ARC_OSABI_CURRENT) {
		pr_err("ABI mismatch - you need newer toolchain\n");
		force_sigsegv(SIGSEGV, current);
		force_sigsegv(SIGSEGV);
		return 0;
	}

+3 −3
Original line number Diff line number Diff line
@@ -257,7 +257,7 @@ setup_frame(struct ksignal *ksig, sigset_t *set, struct sigscratch *scr)
			 */
			check_sp = (new_sp - sizeof(*frame)) & -STACK_ALIGN;
			if (!likely(on_sig_stack(check_sp))) {
				force_sigsegv(ksig->sig, current);
				force_sigsegv(ksig->sig);
				return 1;
			}
		}
@@ -265,7 +265,7 @@ setup_frame(struct ksignal *ksig, sigset_t *set, struct sigscratch *scr)
	frame = (void __user *) ((new_sp - sizeof(*frame)) & -STACK_ALIGN);

	if (!access_ok(frame, sizeof(*frame))) {
		force_sigsegv(ksig->sig, current);
		force_sigsegv(ksig->sig);
		return 1;
	}

@@ -282,7 +282,7 @@ setup_frame(struct ksignal *ksig, sigset_t *set, struct sigscratch *scr)
	err |= setup_sigcontext(&frame->sc, set, scr);

	if (unlikely(err)) {
		force_sigsegv(ksig->sig, current);
		force_sigsegv(ksig->sig);
		return 1;
	}

+1 −1
Original line number Diff line number Diff line
@@ -211,7 +211,7 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
	return 0;

give_sigsegv:
	force_sigsegv(ksig->sig, current);
	force_sigsegv(ksig->sig);
	return -EFAULT;
}

+2 −2
Original line number Diff line number Diff line
@@ -375,7 +375,7 @@ static int setup_frame32(struct ksignal *ksig, struct pt_regs *regs,
			pr_info("%s[%d] bad frame in setup_frame32: %08lx TPC %08lx O7 %08lx\n",
				current->comm, current->pid, (unsigned long)sf,
				regs->tpc, regs->u_regs[UREG_I7]);
		force_sigsegv(ksig->sig, current);
		force_sigsegv(ksig->sig);
		return -EINVAL;
	}

@@ -509,7 +509,7 @@ static int setup_rt_frame32(struct ksignal *ksig, struct pt_regs *regs,
			pr_info("%s[%d] bad frame in setup_rt_frame32: %08lx TPC %08lx O7 %08lx\n",
				current->comm, current->pid, (unsigned long)sf,
				regs->tpc, regs->u_regs[UREG_I7]);
		force_sigsegv(ksig->sig, current);
		force_sigsegv(ksig->sig);
		return -EINVAL;
	}

+1 −1
Original line number Diff line number Diff line
@@ -374,7 +374,7 @@ setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs)
			pr_info("%s[%d] bad frame in setup_rt_frame: %016lx TPC %016lx O7 %016lx\n",
				current->comm, current->pid, (unsigned long)sf,
				regs->tpc, regs->u_regs[UREG_I7]);
		force_sigsegv(ksig->sig, current);
		force_sigsegv(ksig->sig);
		return -EINVAL;
	}

Loading