linux/arch/sh/kernel
Linus Torvalds 9977d9b379 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Pull big execve/kernel_thread/fork unification series from Al Viro:
 "All architectures are converted to new model.  Quite a bit of that
  stuff is actually shared with architecture trees; in such cases it's
  literally shared branch pulled by both, not a cherry-pick.

  A lot of ugliness and black magic is gone (-3KLoC total in this one):

   - kernel_thread()/kernel_execve()/sys_execve() redesign.

     We don't do syscalls from kernel anymore for either kernel_thread()
     or kernel_execve():

     kernel_thread() is essentially clone(2) with callback run before we
     return to userland, the callbacks either never return or do
     successful do_execve() before returning.

     kernel_execve() is a wrapper for do_execve() - it doesn't need to
     do transition to user mode anymore.

     As a result kernel_thread() and kernel_execve() are
     arch-independent now - they live in kernel/fork.c and fs/exec.c
     resp.  sys_execve() is also in fs/exec.c and it's completely
     architecture-independent.

   - daemonize() is gone, along with its parts in fs/*.c

   - struct pt_regs * is no longer passed to do_fork/copy_process/
     copy_thread/do_execve/search_binary_handler/->load_binary/do_coredump.

   - sys_fork()/sys_vfork()/sys_clone() unified; some architectures
     still need wrappers (ones with callee-saved registers not saved in
     pt_regs on syscall entry), but the main part of those suckers is in
     kernel/fork.c now."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (113 commits)
  do_coredump(): get rid of pt_regs argument
  print_fatal_signal(): get rid of pt_regs argument
  ptrace_signal(): get rid of unused arguments
  get rid of ptrace_signal_deliver() arguments
  new helper: signal_pt_regs()
  unify default ptrace_signal_deliver
  flagday: kill pt_regs argument of do_fork()
  death to idle_regs()
  don't pass regs to copy_process()
  flagday: don't pass regs to copy_thread()
  bfin: switch to generic vfork, get rid of pointless wrappers
  xtensa: switch to generic clone()
  openrisc: switch to use of generic fork and clone
  unicore32: switch to generic clone(2)
  score: switch to generic fork/vfork/clone
  c6x: sanitize copy_thread(), get rid of clone(2) wrapper, switch to generic clone()
  take sys_fork/sys_vfork/sys_clone prototypes to linux/syscalls.h
  mn10300: switch to generic fork/vfork/clone
  h8300: switch to generic fork/vfork/clone
  tile: switch to generic clone()
  ...

Conflicts:
	arch/microblaze/include/asm/Kbuild
2012-12-12 12:22:13 -08:00
..
cpu Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-12 12:22:13 -08:00
vsyscall sh: vsyscall: Fix up .eh_frame generation. 2012-03-30 19:42:26 +09:00
.gitignore
asm-offsets.c
cpufreq.c sh: cpufreq: Wire up scaling_available_freqs support. 2012-01-27 20:45:24 +09:00
crash_dump.c crash_dump: export is_kdump_kernel to modules, consolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn 2011-03-23 19:47:19 -07:00
debugtraps.S
disassemble.c
dma-nommu.c SH: adapt for dma_map_ops changes 2012-03-28 16:36:37 +02:00
dumpstack.c sh64: Convert to unwinder API. 2012-05-24 15:03:46 +09:00
dwarf.c
entry-common.S sh: switch to generic kernel_thread()/kernel_execve() 2012-10-22 22:31:01 -04:00
ftrace.c
head_32.S
head_64.S
hw_breakpoint.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
idle.c sh: Remove cpu_idle_wait() 2012-05-08 12:35:07 +02:00
io_trapped.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
io.c
iomap.c
ioport.c sections: fix section conflicts in arch/sh 2012-10-06 03:04:40 +09:00
irq_32.c
irq_64.c
irq.c sh: Kill off now unused arch_probe_nr_irqs(). 2012-05-24 13:59:35 +09:00
kdebugfs.c
kgdb.c sh: kgdb: Fix up NULL pointer deref by kgdb_nmicallback. 2012-04-10 14:22:39 +09:00
kprobes.c
localtimer.c
machine_kexec.c memblock: s/memblock_analyze()/memblock_allow_resize()/ and update users 2011-12-08 10:22:08 -08:00
machvec.c sh: Kill off machvec IRQ hinting. 2012-05-21 17:54:01 +09:00
Makefile sh: switch to generic kernel_thread()/kernel_execve() 2012-10-22 22:31:01 -04:00
module.c modules: make arch's use default loader hooks 2011-07-24 22:06:04 +09:30
nmi_debug.c
perf_callchain.c sh: remove warning and warning_symbol from struct stacktrace_ops 2011-05-23 14:42:15 +09:00
perf_event.c perf: Disable PERF_SAMPLE_BRANCH_* when not supported 2012-03-05 14:55:42 +01:00
process_32.c flagday: don't pass regs to copy_thread() 2012-11-28 23:43:42 -05:00
process_64.c flagday: don't pass regs to copy_thread() 2012-11-28 23:43:42 -05:00
process.c sh: arch/sh/kernel/process.c needs asm/fpu.h for unlazy_fpu(). 2012-05-24 13:03:20 +09:00
ptrace_32.c seccomp: ignore secure_computing return values 2012-04-18 12:24:50 +10:00
ptrace_64.c seccomp: ignore secure_computing return values 2012-04-18 12:24:50 +10:00
ptrace.c
reboot.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
relocate_kernel.S
return_address.c
setup.c mtd/uclinux: Use generic __bss_stop instead of _ebss 2012-06-27 09:59:43 +02:00
sh_bios.c
sh_ksyms_32.c mtd/uclinux: Use generic __bss_stop instead of _ebss 2012-06-27 09:59:43 +02:00
sh_ksyms_64.c sh: use the new generic strnlen_user() function 2012-06-13 10:28:37 +09:00
signal_32.c Uninclude linux/freezer.h 2012-10-01 09:58:18 -04:00
signal_64.c sh64: fix altstack switching on sigreturn 2012-11-28 21:46:11 -05:00
smp.c sh: use clear_tasks_mm_cpumask() 2012-05-31 17:49:30 -07:00
stacktrace.c sh: remove warning and warning_symbol from struct stacktrace_ops 2011-05-23 14:42:15 +09:00
swsusp.c
sys_sh32.c sh: switch to generic kernel_thread()/kernel_execve() 2012-10-22 22:31:01 -04:00
sys_sh.c
syscalls_32.S sh: Wire up kcmp syscall. 2012-10-15 13:54:29 +09:00
syscalls_64.S sh: Wire up kcmp syscall. 2012-10-15 13:54:29 +09:00
time.c sh: hwblk: Kill off remaining bits of hwblk API. 2011-11-18 16:26:00 +09:00
topology.c arch/sh: remove references to cpu_*_map. 2012-02-24 13:21:45 +09:00
traps_32.c sh: Consolidate die definitions for trap handlers. 2012-06-14 14:18:51 +09:00
traps_64.c sh64: Attempt to make reserved insn trap handler resemble C. 2012-06-14 14:46:36 +09:00
traps.c sh: Consolidate die definitions for trap handlers. 2012-06-14 14:18:51 +09:00
unwinder.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
vmlinux.lds.S mtd/uclinux: Use generic __bss_stop instead of _ebss 2012-06-27 09:59:43 +02:00