OpenCloudOS-Kernel/arch/unicore32/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
..
Makefile pwm: Move PUV3 PWM driver to PWM framework 2012-10-05 20:56:41 +02:00
asm-offsets.c unicore32 core architecture: generic elf and ksyms stuff 2011-03-17 09:19:05 +08:00
clock.c unicore32 io: redefine __REG(x) and re-use readl/writel funcs 2011-03-17 09:19:19 +08:00
cpu-ucv2.c unicore32 additional architecture files: pm related files 2011-03-17 09:19:11 +08:00
debug-macro.S unicore32 additional architecture files: low-level lib: ocd debug 2011-03-17 09:19:12 +08:00
debug.S unicore32 additional architecture files: low-level lib: ocd debug 2011-03-17 09:19:12 +08:00
dma.c Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
early_printk.c unicore32 additional architecture files: low-level lib: ocd debug 2011-03-17 09:19:12 +08:00
elf.c unicore32 core architecture: generic elf and ksyms stuff 2011-03-17 09:19:05 +08:00
entry.S unicore32: switch to generic clone(2) 2012-11-28 23:43:40 -05:00
fpu-ucf64.c unicore32 additional architecture files: float point handling 2011-03-17 09:19:11 +08:00
gpio.c unicore32 io: redefine __REG(x) and re-use readl/writel funcs 2011-03-17 09:19:19 +08:00
head.S Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
hibernate.c Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
hibernate_asm.S unicore32 additional architecture files: pm related files 2011-03-17 09:19:11 +08:00
irq.c Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
ksyms.c Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
ksyms.h unicore32 core architecture: generic elf and ksyms stuff 2011-03-17 09:19:05 +08:00
module.c modules: make arch's use default loader hooks 2011-07-24 22:06:04 +09:30
pci.c unicore32/PCI: Remove CONFIG_HOTPLUG ifdefs 2012-11-28 12:50:22 -08:00
pm.c unicore32 additional architecture files: pm related files 2011-03-17 09:19:11 +08:00
process.c flagday: don't pass regs to copy_thread() 2012-11-28 23:43:42 -05:00
ptrace.c unicore32 additional architecture files: ptrace handling 2011-03-17 09:19:12 +08:00
puv3-core.c driver-core: remove sysdev.h usage. 2011-12-21 16:26:03 -08:00
puv3-nb0916.c unicore32: Remove IRQF_DISABLED 2012-01-10 10:29:41 +08:00
setup.c unicore32: standardize /proc/iomem "Kernel code" name 2012-01-10 10:29:40 +08:00
setup.h UniCore32-bugfix: Remove definitions in asm/bug.h to solve difference between native and cross compiler 2012-11-09 17:30:09 +08:00
signal.c Uninclude linux/freezer.h 2012-10-01 09:58:18 -04:00
sleep.S unicore32: modify io_p2v and io_v2p macros, and adjust PKUNITY_mmio_BASEs 2011-03-17 09:19:21 +08:00
stacktrace.c unicore32 core architecture: process/thread related codes 2011-03-17 09:19:07 +08:00
sys.c unicore32: switch to generic clone(2) 2012-11-28 23:43:40 -05:00
time.c unicore32: Remove IRQF_DISABLED 2012-01-10 10:29:41 +08:00
traps.c Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt] 2012-03-28 18:30:03 +01:00
vmlinux.lds.S unicore32: change PERCPU to PERCPU_SECTION 2011-06-09 16:27:46 +08:00