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

Commit b64e1c61 authored by Will Deacon's avatar Will Deacon Committed by Catalin Marinas
Browse files

arm64: signal: return struct rt_sigframe from get_sigframe



We only have one type of frame (rt_sigframe) for arm64, so just return
that type directly and dispense with the framesize argument, which is
presumably a hangover from code copied from arch/arm/.

Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent 060a18c7
Loading
Loading
Loading
Loading
+6 −6
Original line number Original line Diff line number Diff line
@@ -202,11 +202,11 @@ static int setup_sigframe(struct rt_sigframe __user *sf,
	return err;
	return err;
}
}


static void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs,
static struct rt_sigframe __user *get_sigframe(struct k_sigaction *ka,
				 int framesize)
					       struct pt_regs *regs)
{
{
	unsigned long sp, sp_top;
	unsigned long sp, sp_top;
	void __user *frame;
	struct rt_sigframe __user *frame;


	sp = sp_top = regs->sp;
	sp = sp_top = regs->sp;


@@ -216,8 +216,8 @@ static void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs,
	if ((ka->sa.sa_flags & SA_ONSTACK) && !sas_ss_flags(sp))
	if ((ka->sa.sa_flags & SA_ONSTACK) && !sas_ss_flags(sp))
		sp = sp_top = current->sas_ss_sp + current->sas_ss_size;
		sp = sp_top = current->sas_ss_sp + current->sas_ss_size;


	sp = (sp - framesize) & ~15;
	sp = (sp - sizeof(struct rt_sigframe)) & ~15;
	frame = (void __user *)sp;
	frame = (struct rt_sigframe __user *)sp;


	/*
	/*
	 * Check that we can actually write to the signal frame.
	 * Check that we can actually write to the signal frame.
@@ -253,7 +253,7 @@ static int setup_rt_frame(int usig, struct k_sigaction *ka, siginfo_t *info,
	stack_t stack;
	stack_t stack;
	int err = 0;
	int err = 0;


	frame = get_sigframe(ka, regs, sizeof(*frame));
	frame = get_sigframe(ka, regs);
	if (!frame)
	if (!frame)
		return 1;
		return 1;