Commit 288ddad5 authored by Eric W. Biederman's avatar Eric W. Biederman Committed by David S. Miller
Browse files

syscall: Sort out syscall_restart name clash.



Stephen Rothwell <sfr@canb.auug.org.au> writes:

> Today's linux-next build of at least some av32 and arm configs failed like this:
>
> arch/avr32/kernel/signal.c:216: error: conflicting types for 'restart_syscall'
> include/linux/sched.h:2184: error: previous definition of 'restart_syscall' was here
>
> Caused by commit 690cc3ff ("syscall:
> Implement a convinience function restart_syscall") from the net tree.

Grrr. Some days it feels like all of the good names are already taken.

Let's just rename the two static users in arm and avr32 to get this
sorted out.

Signed-off-by: default avatarEric W. Biederman <ebiederm@aristanetworks.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 97bc5415
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -532,7 +532,7 @@ setup_rt_frame(int usig, struct k_sigaction *ka, siginfo_t *info,
	return err;
}

static inline void restart_syscall(struct pt_regs *regs)
static inline void setup_syscall_restart(struct pt_regs *regs)
{
	regs->ARM_r0 = regs->ARM_ORIG_r0;
	regs->ARM_pc -= thumb_mode(regs) ? 2 : 4;
@@ -567,7 +567,7 @@ handle_signal(unsigned long sig, struct k_sigaction *ka,
			}
			/* fallthrough */
		case -ERESTARTNOINTR:
			restart_syscall(regs);
			setup_syscall_restart(regs);
		}
	}

@@ -691,7 +691,7 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
		if (regs->ARM_r0 == -ERESTARTNOHAND ||
		    regs->ARM_r0 == -ERESTARTSYS ||
		    regs->ARM_r0 == -ERESTARTNOINTR) {
			restart_syscall(regs);
			setup_syscall_restart(regs);
		}
	}
	single_step_set(current);
+2 −2
Original line number Diff line number Diff line
@@ -212,7 +212,7 @@ setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
	return err;
}

static inline void restart_syscall(struct pt_regs *regs)
static inline void setup_syscall_restart(struct pt_regs *regs)
{
	if (regs->r12 == -ERESTART_RESTARTBLOCK)
		regs->r8 = __NR_restart_syscall;
@@ -296,7 +296,7 @@ int do_signal(struct pt_regs *regs, sigset_t *oldset, int syscall)
			}
			/* fall through */
		case -ERESTARTNOINTR:
			restart_syscall(regs);
			setup_syscall_restart(regs);
		}
	}