summaryrefslogtreecommitdiff
path: root/arch/s390/kernel/compat_wrapper.S
Commit message (Collapse)AuthorAgeFilesLines
* s390/compat: get rid of compat wrapper assembly codeHeiko Carstens2014-03-061-369/+0
| | | | | | | | | Now that all compat syscalls have been converted to use the COMPAT_SYSCALL_DEFINE macros, we don't need to compat syscall wrapper assembly code anymore. So remove it and fix up the system call table accordingly. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: add sync_file_range and fallocate compat syscallsHeiko Carstens2014-03-041-18/+0
| | | | | | | | | | The compat syscall wrappers for sync_file_range and fallocate merged 32 bit parameters into 64 bit parameters. Therefore they did more than just the usual zero and/or sign extension of system call parameters. So convert these two wrappers to full s390 specific compat sytem calls. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 15Heiko Carstens2014-03-041-74/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 14Heiko Carstens2014-03-041-50/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 13Heiko Carstens2014-03-041-67/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 12Heiko Carstens2014-03-041-66/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 11Heiko Carstens2014-03-041-48/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 10Heiko Carstens2014-03-041-60/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 09Heiko Carstens2014-03-041-57/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 08Heiko Carstens2014-03-041-56/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 07Heiko Carstens2014-03-041-66/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 06Heiko Carstens2014-03-041-51/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 05Heiko Carstens2014-03-041-55/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 04Heiko Carstens2014-03-041-57/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 03Heiko Carstens2014-03-041-55/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 02Heiko Carstens2014-03-041-45/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert system call wrappers to C part 01Heiko Carstens2014-03-041-56/+0
| | | | | | | | | | | | | | | Introduce a new compat_wrap.c file which contains the s390 specific compat system call wrappers. The s390 specific system call wrappers only perform sign, zero and pointer conversion of system call arguments before actually calling the non-compat system call. Therefore introduce COMPAT_SYSCALL_WRAPx macros which generate C code that is nearly identical to the assembly code. This has the advantage that the compile will generate correct code, and we avoid the frequent copy-paste errors seen in the compat_wrapper.S file. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 7Heiko Carstens2014-03-041-24/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 6Heiko Carstens2014-03-041-25/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 5Heiko Carstens2014-03-041-34/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 4Heiko Carstens2014-03-041-14/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 3Heiko Carstens2014-03-041-24/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 2Heiko Carstens2014-03-041-27/+0
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 1Heiko Carstens2014-03-041-27/+0
| | | | | | | Convert s390 specific system calls to to the new COMPAT_SYSCALL_DEFINE macro. This allows us to get rid of the assembly compat wrappers. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* s390/compat: fix sys_sched_getattr compat wrapperHeiko Carstens2014-02-211-1/+1
| | | | | | | Fix stupid typo. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* s390: wire up sys_sched_setattr/sys_sched_getattrHeiko Carstens2014-01-221-0/+11
| | | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* switch compat_sys_sysctl to COMPAT_SYSCALL_DEFINEAl Viro2013-05-091-4/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* unify compat fanotify_mark(2), switch to COMPAT_SYSCALL_DEFINEAl Viro2013-05-091-9/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* Merge branch 'for-linus' of ↵Linus Torvalds2013-05-011-16/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull VFS updates from Al Viro, Misc cleanups all over the place, mainly wrt /proc interfaces (switch create_proc_entry to proc_create(), get rid of the deprecated create_proc_read_entry() in favor of using proc_create_data() and seq_file etc). 7kloc removed. * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits) don't bother with deferred freeing of fdtables proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h proc: Make the PROC_I() and PDE() macros internal to procfs proc: Supply a function to remove a proc entry by PDE take cgroup_open() and cpuset_open() to fs/proc/base.c ppc: Clean up scanlog ppc: Clean up rtas_flash driver somewhat hostap: proc: Use remove_proc_subtree() drm: proc: Use remove_proc_subtree() drm: proc: Use minor->index to label things, not PDE->name drm: Constify drm_proc_list[] zoran: Don't print proc_dir_entry data in debug reiserfs: Don't access the proc_dir_entry in r_open(), r_start() r_show() proc: Supply an accessor for getting the data from a PDE's parent airo: Use remove_proc_subtree() rtl8192u: Don't need to save device proc dir PDE rtl8187se: Use a dir under /proc/net/r8180/ proc: Add proc_mkdir_data() proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h} proc: Move PDE_NET() to fs/proc/proc_net.c ...
| * switch compat readv/writev variants to COMPAT_SYSCALL_DEFINEAl Viro2013-04-091-16/+0
| | | | | | | | | | | | ... and take to fs/read_write.c Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | merge compat sys_ipc instancesAl Viro2013-03-031-8/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | consolidate compat lookup_dcookie()Al Viro2013-03-031-7/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | convert vmsplice to COMPAT_SYSCALL_DEFINEAl Viro2013-03-031-7/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | switch getrusage() to COMPAT_SYSCALL_DEFINEAl Viro2013-03-031-5/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | switch epoll_pwait to COMPAT_SYSCALL_DEFINEAl Viro2013-03-031-10/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | convert sendfile{,64} to COMPAT_SYSCALL_DEFINEAl Viro2013-03-031-14/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | switch signalfd{,4}() to COMPAT_SYSCALL_DEFINEAl Viro2013-03-031-13/+0
|/ | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* fix compat truncate/ftruncateAl Viro2013-02-251-10/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* switch lseek to COMPAT_SYSCALL_DEFINEAl Viro2013-02-241-6/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: kill useless wrappersAl Viro2013-02-031-139/+0
| | | | | | COMPAT_SYSCALL_DEFINEx already does everything we need Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic old sigaction()Al Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic compat rt_sigactionAl Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic compat sched_rr_get_interval()Al Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic compat rt_sigqueueinfo()Al Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic compat rt_sigpending()Al Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic compat rt_sigprocmask(2)Al Viro2013-02-031-1/+1
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390: switch to generic sigaltstackAl Viro2013-02-031-5/+0
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* s390/syscalls: wire up finit_module syscallHeiko Carstens2013-01-081-0/+6
| | | | Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
* open*(2) compat fixes (s390, arm64)Al Viro2012-12-021-1/+1
| | | | | | | | | | | | | | | | | | | The usual rules for open()/openat()/open_by_handle_at() are 1) native 32bit - don't force O_LARGEFILE in flags 2) native 64bit - force O_LARGEFILE in flags 3) compat on 64bit host - as for native 32bit 4) native 32bit ABI for 64bit system (mips/n32, x86/x32) - as for native 64bit There are only two exceptions - s390 compat has open() forcing O_LARGEFILE and arm64 compat has open_by_handle_at() doing the same thing. The same binaries on native host (s390/31 and arm resp.) will *not* force O_LARGEFILE, so IMO both are emulation bugs. Objections? The fix is obvious... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'for-linus' of ↵Linus Torvalds2012-10-101-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal Pull generic execve() changes from Al Viro: "This introduces the generic kernel_thread() and kernel_execve() functions, and switches x86, arm, alpha, um and s390 over to them." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (26 commits) s390: convert to generic kernel_execve() s390: switch to generic kernel_thread() s390: fold kernel_thread_helper() into ret_from_fork() s390: fold execve_tail() into start_thread(), convert to generic sys_execve() um: switch to generic kernel_thread() x86, um/x86: switch to generic sys_execve and kernel_execve x86: split ret_from_fork alpha: introduce ret_from_kernel_execve(), switch to generic kernel_execve() alpha: switch to generic kernel_thread() alpha: switch to generic sys_execve() arm: get rid of execve wrapper, switch to generic execve() implementation arm: optimized current_pt_regs() arm: introduce ret_from_kernel_execve(), switch to generic kernel_execve() arm: split ret_from_fork, simplify kernel_thread() [based on patch by rmk] generic sys_execve() generic kernel_execve() new helper: current_pt_regs() preparation for generic kernel_thread() um: kill thread->forking um: let signal_delivered() do SIGTRAP on singlestepping into handler ...