diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-09 23:02:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-09 23:02:25 -0400 |
commit | 42859eea96ba6beabfb0369a1eeffa3c7d2bd9cb (patch) | |
tree | fa38aeda0d6e7a4c48a882b166b8643594a1ad50 /include/linux/binfmts.h | |
parent | f59b51fe3d3092c08d7d554ecb40db24011b2ebc (diff) | |
parent | f322220d6159455da2b5a8a596d802c8695fed30 (diff) |
Merge branch 'for-linus' of 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
...
Diffstat (limited to 'include/linux/binfmts.h')
-rw-r--r-- | include/linux/binfmts.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/binfmts.h b/include/linux/binfmts.h index 37935c2d2e8f..26531f32bbb2 100644 --- a/include/linux/binfmts.h +++ b/include/linux/binfmts.h | |||
@@ -19,6 +19,8 @@ struct pt_regs; | |||
19 | 19 | ||
20 | #ifdef __KERNEL__ | 20 | #ifdef __KERNEL__ |
21 | #include <linux/sched.h> | 21 | #include <linux/sched.h> |
22 | #include <linux/unistd.h> | ||
23 | #include <asm/exec.h> | ||
22 | 24 | ||
23 | #define CORENAME_MAX_SIZE 128 | 25 | #define CORENAME_MAX_SIZE 128 |
24 | 26 | ||
@@ -135,5 +137,9 @@ extern void install_exec_creds(struct linux_binprm *bprm); | |||
135 | extern void set_binfmt(struct linux_binfmt *new); | 137 | extern void set_binfmt(struct linux_binfmt *new); |
136 | extern void free_bprm(struct linux_binprm *); | 138 | extern void free_bprm(struct linux_binprm *); |
137 | 139 | ||
140 | #ifdef __ARCH_WANT_KERNEL_EXECVE | ||
141 | extern void ret_from_kernel_execve(struct pt_regs *normal) __noreturn; | ||
142 | #endif | ||
143 | |||
138 | #endif /* __KERNEL__ */ | 144 | #endif /* __KERNEL__ */ |
139 | #endif /* _LINUX_BINFMTS_H */ | 145 | #endif /* _LINUX_BINFMTS_H */ |