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

Commit be06fbf8 authored by Heiko Carstens's avatar Heiko Carstens
Browse files

s390/compat: convert system call wrappers to C part 03

parent 473a0657
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -43,3 +43,13 @@ COMPAT_SYSCALL_WRAP1(brk, compat_ulong_t, brk);
COMPAT_SYSCALL_WRAP2(signal, int, sig, __sighandler_t, handler);
COMPAT_SYSCALL_WRAP1(acct, const char __user *, name);
COMPAT_SYSCALL_WRAP2(umount, char __user *, name, int, flags);
COMPAT_SYSCALL_WRAP2(setpgid, compat_pid_t, pid, compat_pid_t, pgid);
COMPAT_SYSCALL_WRAP1(umask, int, mask);
COMPAT_SYSCALL_WRAP1(chroot, const char __user *, filename);
COMPAT_SYSCALL_WRAP2(dup2, unsigned int, oldfd, unsigned int, newfd);
COMPAT_SYSCALL_WRAP3(sigsuspend, int, unused1, int, unused2, compat_old_sigset_t, mask);
COMPAT_SYSCALL_WRAP2(sethostname, char __user *, name, int, len);
COMPAT_SYSCALL_WRAP2(symlink, const char __user *, old, const char __user *, new);
COMPAT_SYSCALL_WRAP3(readlink, const char __user *, path, char __user *, buf, int, bufsiz);
COMPAT_SYSCALL_WRAP1(uselib, const char __user *, library);
COMPAT_SYSCALL_WRAP2(swapon, const char __user *, specialfile, int, swap_flags);
+0 −55
Original line number Diff line number Diff line
@@ -50,50 +50,15 @@ ENTRY(compat_sys_fcntl_wrapper)
	llgfr	%r4,%r4			# unsigned long
	jg	compat_sys_fcntl	# branch to system call

ENTRY(sys32_setpgid_wrapper)
	lgfr	%r2,%r2			# pid_t
	lgfr	%r3,%r3			# pid_t
	jg	sys_setpgid		# branch to system call

ENTRY(sys32_umask_wrapper)
	lgfr	%r2,%r2			# int
	jg	sys_umask		# branch to system call

ENTRY(sys32_chroot_wrapper)
	llgtr	%r2,%r2			# char *
	jg	sys_chroot		# branch to system call

ENTRY(sys32_ustat_wrapper)
	llgfr	%r2,%r2			# dev_t
	llgtr	%r3,%r3			# struct ustat *
	jg	compat_sys_ustat

ENTRY(sys32_dup2_wrapper)
	llgfr	%r2,%r2			# unsigned int
	llgfr	%r3,%r3			# unsigned int
	jg	sys_dup2		# branch to system call

#sys32_getppid_wrapper			# void

#sys32_getpgrp_wrapper			# void

#sys32_setsid_wrapper			# void

ENTRY(sys_sigsuspend_wrapper)
	lgfr	%r2,%r2			# int
	lgfr	%r3,%r3			# int
	llgfr	%r4,%r4			# old_sigset_t
	jg	sys_sigsuspend

ENTRY(compat_sys_sigpending_wrapper)
	llgtr	%r2,%r2			# compat_old_sigset_t *
	jg	compat_sys_sigpending	# branch to system call

ENTRY(sys32_sethostname_wrapper)
	llgtr	%r2,%r2			# char *
	lgfr	%r3,%r3			# int
	jg	sys_sethostname		# branch to system call

ENTRY(compat_sys_setrlimit_wrapper)
	llgfr	%r2,%r2			# unsigned int
	llgtr	%r3,%r3			# struct rlimit_emu31 *
@@ -119,26 +84,6 @@ ENTRY(compat_sys_settimeofday_wrapper)
	llgtr	%r3,%r3			# struct timezone *
	jg	compat_sys_settimeofday	# branch to system call

ENTRY(sys32_symlink_wrapper)
	llgtr	%r2,%r2			# const char *
	llgtr	%r3,%r3			# const char *
	jg	sys_symlink		# branch to system call

ENTRY(sys32_readlink_wrapper)
	llgtr	%r2,%r2			# const char *
	llgtr	%r3,%r3			# char *
	lgfr	%r4,%r4			# int
	jg	sys_readlink		# branch to system call

ENTRY(sys32_uselib_wrapper)
	llgtr	%r2,%r2			# const char *
	jg	sys_uselib		# branch to system call

ENTRY(sys32_swapon_wrapper)
	llgtr	%r2,%r2			# const char *
	lgfr	%r3,%r3			# int
	jg	sys_swapon		# branch to system call

ENTRY(sys32_reboot_wrapper)
	lgfr	%r2,%r2			# int
	lgfr	%r3,%r3			# int
+10 −10
Original line number Diff line number Diff line
@@ -65,13 +65,13 @@ NI_SYSCALL /* old lock syscall */
SYSCALL(sys_ioctl,sys_ioctl,compat_sys_ioctl_wrapper)
SYSCALL(sys_fcntl,sys_fcntl,compat_sys_fcntl_wrapper)		/* 55 */
NI_SYSCALL							/* intel mpx syscall */
SYSCALL(sys_setpgid,sys_setpgid,sys32_setpgid_wrapper)
SYSCALL(sys_setpgid,sys_setpgid,compat_sys_setpgid)
NI_SYSCALL							/* old ulimit syscall */
NI_SYSCALL							/* old uname syscall */
SYSCALL(sys_umask,sys_umask,sys32_umask_wrapper)		/* 60 */
SYSCALL(sys_chroot,sys_chroot,sys32_chroot_wrapper)
SYSCALL(sys_umask,sys_umask,compat_sys_umask)			/* 60 */
SYSCALL(sys_chroot,sys_chroot,compat_sys_chroot)
SYSCALL(sys_ustat,sys_ustat,sys32_ustat_wrapper)
SYSCALL(sys_dup2,sys_dup2,sys32_dup2_wrapper)
SYSCALL(sys_dup2,sys_dup2,compat_sys_dup2)
SYSCALL(sys_getppid,sys_getppid,sys_getppid)
SYSCALL(sys_getpgrp,sys_getpgrp,sys_getpgrp)			/* 65 */
SYSCALL(sys_setsid,sys_setsid,sys_setsid)
@@ -80,9 +80,9 @@ NI_SYSCALL /* old sgetmask syscall*/
NI_SYSCALL							/* old ssetmask syscall*/
SYSCALL(sys_setreuid16,sys_ni_syscall,compat_sys_s390_setreuid16) /* old setreuid16 syscall */
SYSCALL(sys_setregid16,sys_ni_syscall,compat_sys_s390_setregid16) /* old setregid16 syscall */
SYSCALL(sys_sigsuspend,sys_sigsuspend,sys_sigsuspend_wrapper)
SYSCALL(sys_sigsuspend,sys_sigsuspend,compat_sys_sigsuspend)
SYSCALL(sys_sigpending,sys_sigpending,compat_sys_sigpending_wrapper)
SYSCALL(sys_sethostname,sys_sethostname,sys32_sethostname_wrapper)
SYSCALL(sys_sethostname,sys_sethostname,compat_sys_sethostname)
SYSCALL(sys_setrlimit,sys_setrlimit,compat_sys_setrlimit_wrapper)	/* 75 */
SYSCALL(sys_old_getrlimit,sys_getrlimit,compat_sys_old_getrlimit_wrapper)
SYSCALL(sys_getrusage,sys_getrusage,compat_sys_getrusage)
@@ -91,11 +91,11 @@ SYSCALL(sys_settimeofday,sys_settimeofday,compat_sys_settimeofday_wrapper)
SYSCALL(sys_getgroups16,sys_ni_syscall,compat_sys_s390_getgroups16)	/* 80 old getgroups16 syscall */
SYSCALL(sys_setgroups16,sys_ni_syscall,compat_sys_s390_setgroups16)	/* old setgroups16 syscall */
NI_SYSCALL							/* old select syscall */
SYSCALL(sys_symlink,sys_symlink,sys32_symlink_wrapper)
SYSCALL(sys_symlink,sys_symlink,compat_sys_symlink)
NI_SYSCALL							/* old lstat syscall */
SYSCALL(sys_readlink,sys_readlink,sys32_readlink_wrapper)	/* 85 */
SYSCALL(sys_uselib,sys_uselib,sys32_uselib_wrapper)
SYSCALL(sys_swapon,sys_swapon,sys32_swapon_wrapper)
SYSCALL(sys_readlink,sys_readlink,compat_sys_readlink)		/* 85 */
SYSCALL(sys_uselib,sys_uselib,compat_sys_uselib)
SYSCALL(sys_swapon,sys_swapon,compat_sys_swapon)
SYSCALL(sys_reboot,sys_reboot,sys32_reboot_wrapper)
SYSCALL(sys_ni_syscall,sys_ni_syscall,old32_readdir_wrapper)	/* old readdir syscall */
SYSCALL(sys_old_mmap,sys_old_mmap,compat_sys_s390_old_mmap)	/* 90 */