summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2012-12-19Bury the conditionals from kernel_thread/kernel_execve seriesAl Viro
All architectures have CONFIG_GENERIC_KERNEL_THREAD CONFIG_GENERIC_KERNEL_EXECVE __ARCH_WANT_SYS_EXECVE None of them have __ARCH_WANT_KERNEL_EXECVE and there are only two callers of kernel_execve() (which is a trivial wrapper for do_execve() now) left. Kill the conditionals and make both callers use do_execve(). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-12-19COMPAT_SYSCALL_DEFINE: infrastructureAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29get rid of ptrace_signal_deliver() argumentsAl Viro
the first one is equal to signal_pt_regs(), the second is never used (and always NULL, while we are at it). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29new helper: signal_pt_regs()Al Viro
Always equal to task_pt_regs(current); defined only when we are in signal delivery. It may be different from current_pt_regs() - e.g. architectures like m68k may have pt_regs location on exception different from that on a syscall and signals (just as ptrace handling) may happen on exceptions as well as on syscalls. When they are equal, it's often better to have signal_pt_regs defined (in asm/ptrace.h) as current_pt_regs - that tends to be optimized better than default would be. However, optimisation is the only reason why we might want an arch-specific definition; if current_pt_regs() and task_pt_regs(current) have different values, the latter one is right. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29unify default ptrace_signal_deliverAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29flagday: kill pt_regs argument of do_fork()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29death to idle_regs()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29flagday: don't pass regs to copy_thread()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29bfin: switch to generic vfork, get rid of pointless wrappersAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29xtensa: switch to generic clone()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29openrisc: switch to use of generic fork and cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29unicore32: switch to generic clone(2)Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29score: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29c6x: sanitize copy_thread(), get rid of clone(2) wrapper, switch to generic ↵Al Viro
clone() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29take sys_fork/sys_vfork/sys_clone prototypes to linux/syscalls.hAl Viro
now it can be done... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29mn10300: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29h8300: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29tile: switch to generic clone()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29m68k: sanitize copy_thread(), fork/vfork/clone wrappers, switch to generic ↵Al Viro
fork/vfork Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29alpha: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29s390: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29microblaze: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2012-11-29hexagon: switch to generic clone()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29sh: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29parisc: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29m32r: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29cris: switch to generic fork/vfork/cloneAl Viro
same braindamage as on s390 - the first two arguments of clone(2) in the wrong order. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29avr32: sanitize copy_thread(), switch to generic fork/vfork/clone, kill wrappersAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29arm64: sanitize copy_thread(), switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29frv: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29powerpc: switch to generic fork/clone/vforkAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29arm: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29x86, um: switch to generic fork/vfork/cloneAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29get rid of pt_regs argument of ->load_binary()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29get rid of pt_regs argument of search_binary_handler()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29kill stray kernel_thread() garbageAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29consolidate sys_execve() prototypeAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29Merge branches 'no-rebases', 'arch-avr32', 'arch-blackfin', 'arch-cris', ↵Al Viro
'arch-h8300', 'arch-m32r', 'arch-mn10300', 'arch-score', 'arch-sh' and 'arch-powerpc' into for-next
2012-11-29generic sys_fork / sys_vfork / sys_cloneAl Viro
... and get rid of idiotic struct pt_regs * in asm-generic/syscalls.h prototypes of the same, while we are at it. Eventually we want those in linux/syscalls.h, of course, but that'll have to wait a bit. Note that there are *three* variants of sys_clone() order of arguments. Braindamage galore... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29alpha: reorganize copy_process(), prepare to saner fork_idle()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29alpha: don't pass useless arguments to do_{,rt_},sigreturn()Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29alpha: simplify fork and friendsAl Viro
* no need to restore everything from switch_stack when we only need $26 * no need to pass current_pt_regs() manually, we can just as easily calculate it in alpha_clone/alpha_vfork ($8 + constant) * interpretation of zero usp as "use the parent's" is simpler in copy_thread(); let fork and vfork just pass 0. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29um: don't bother looking at regs in copy_thread() - current_pt_regs() is ↵Al Viro
what we'll get Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29um: don't bother with passing sp to do_fork() for fork(2)/vfork(2)Al Viro
copy_thread() on um will do the right thing when getting 0 for sp... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29microblaze: rt_sigreturn is too trigger-happy about sigaltstack errorsAl Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29score: do_sigaltstack() expects a userland pointer...Al Viro
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29sh64: fix altstack switching on sigreturnAl Viro
incidentally, declaring a local variable as __user (!) to make sparse STFU is really sick. Especially since sparse had been 100% right - it *is* a bug. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29openrisk: fix altstack switching on sigreturnAl Viro
do_sigaltstack() expects _userland_ address, TYVM... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29um: get_safe_registers() should be done in flush_thread(), not start_thread()Al Viro
... or we'll end up buggering the results of ELF_PLAT_INIT() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-11-29Merge branch 'arch-tile' into no-rebasesAl Viro