aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2018-03-20 10:44:21 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2018-03-20 12:05:17 -0400
commit47db69752b22de2ac315d094fd09fac31b0d3bfc (patch)
treeb001c3da22ebf19a89082afd30c7713329d30280
parent3d0e354e4e51f40a58ae8bff7ded60f0c1f5c618 (diff)
sparc: get rid of asm wrapper for nis_syscall()
just use current_pt_regs() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--arch/sparc/kernel/entry.S7
-rw-r--r--arch/sparc/kernel/sys_sparc_32.c5
-rw-r--r--arch/sparc/kernel/sys_sparc_64.c4
-rw-r--r--arch/sparc/kernel/syscalls.S3
-rw-r--r--arch/sparc/kernel/systbls.h2
5 files changed, 5 insertions, 16 deletions
diff --git a/arch/sparc/kernel/entry.S b/arch/sparc/kernel/entry.S
index b47917939bc5..4d3696973325 100644
--- a/arch/sparc/kernel/entry.S
+++ b/arch/sparc/kernel/entry.S
@@ -801,13 +801,6 @@ SUN_PI_(lda [%l4] ASI_M_MMUREGS, %l5) ! read sfsr last
801 RESTORE_ALL 801 RESTORE_ALL
802 802
803 .align 4 803 .align 4
804 .globl sys_nis_syscall
805sys_nis_syscall:
806 mov %o7, %l5
807 add %sp, STACKFRAME_SZ, %o0 ! pt_regs *regs arg
808 call c_sys_nis_syscall
809 mov %l5, %o7
810
811sunos_execv: 804sunos_execv:
812 .globl sunos_execv 805 .globl sunos_execv
813 b sys_execve 806 b sys_execve
diff --git a/arch/sparc/kernel/sys_sparc_32.c b/arch/sparc/kernel/sys_sparc_32.c
index a927be4a51e7..a5df89743e06 100644
--- a/arch/sparc/kernel/sys_sparc_32.c
+++ b/arch/sparc/kernel/sys_sparc_32.c
@@ -127,11 +127,10 @@ SYSCALL_DEFINE5(sparc_remap_file_pages, unsigned long, start, unsigned long, siz
127 (pgoff >> (PAGE_SHIFT - 12)), flags); 127 (pgoff >> (PAGE_SHIFT - 12)), flags);
128} 128}
129 129
130/* we come to here via sys_nis_syscall so it can setup the regs argument */ 130SYSCALL_DEFINE0(nis_syscall)
131asmlinkage unsigned long
132c_sys_nis_syscall (struct pt_regs *regs)
133{ 131{
134 static int count = 0; 132 static int count = 0;
133 struct pt_regs *regs = current_pt_regs();
135 134
136 if (count++ > 5) 135 if (count++ > 5)
137 return -ENOSYS; 136 return -ENOSYS;
diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc_64.c
index b929414fa9f2..c66a396d7afe 100644
--- a/arch/sparc/kernel/sys_sparc_64.c
+++ b/arch/sparc/kernel/sys_sparc_64.c
@@ -480,10 +480,10 @@ SYSCALL_DEFINE5(64_mremap, unsigned long, addr, unsigned long, old_len,
480 return sys_mremap(addr, old_len, new_len, flags, new_addr); 480 return sys_mremap(addr, old_len, new_len, flags, new_addr);
481} 481}
482 482
483/* we come to here via sys_nis_syscall so it can setup the regs argument */ 483SYSCALL_DEFINE0(nis_syscall)
484asmlinkage unsigned long c_sys_nis_syscall(struct pt_regs *regs)
485{ 484{
486 static int count; 485 static int count;
486 struct pt_regs *regs = current_pt_regs();
487 487
488 /* Don't make the system unusable, if someone goes stuck */ 488 /* Don't make the system unusable, if someone goes stuck */
489 if (count++ > 5) 489 if (count++ > 5)
diff --git a/arch/sparc/kernel/syscalls.S b/arch/sparc/kernel/syscalls.S
index d7d86b95011a..db42b4fb3708 100644
--- a/arch/sparc/kernel/syscalls.S
+++ b/arch/sparc/kernel/syscalls.S
@@ -27,9 +27,6 @@ sys32_execveat:
27#endif 27#endif
28 28
29 .align 32 29 .align 32
30sys_nis_syscall:
31 ba,pt %xcc, c_sys_nis_syscall
32 add %sp, PTREGS_OFF, %o0
33#ifdef CONFIG_COMPAT 30#ifdef CONFIG_COMPAT
34sys32_sigstack: 31sys32_sigstack:
35 ba,pt %xcc, do_sys32_sigstack 32 ba,pt %xcc, do_sys32_sigstack
diff --git a/arch/sparc/kernel/systbls.h b/arch/sparc/kernel/systbls.h
index 1cb02fa28e9c..bf014267d619 100644
--- a/arch/sparc/kernel/systbls.h
+++ b/arch/sparc/kernel/systbls.h
@@ -11,7 +11,7 @@
11 11
12asmlinkage long sys_getpagesize(void); 12asmlinkage long sys_getpagesize(void);
13asmlinkage long sys_sparc_pipe(void); 13asmlinkage long sys_sparc_pipe(void);
14asmlinkage unsigned long c_sys_nis_syscall(struct pt_regs *regs); 14asmlinkage long sys_nis_syscall(void);
15asmlinkage long sys_getdomainname(char __user *name, int len); 15asmlinkage long sys_getdomainname(char __user *name, int len);
16void do_rt_sigreturn(struct pt_regs *regs); 16void do_rt_sigreturn(struct pt_regs *regs);
17asmlinkage long sys_mmap(unsigned long addr, unsigned long len, 17asmlinkage long sys_mmap(unsigned long addr, unsigned long len,