diff options
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 6633e83e608a..93ed0b682adb 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -2556,8 +2556,22 @@ extern struct mm_struct *mm_access(struct task_struct *task, unsigned int mode); | |||
2556 | /* Remove the current tasks stale references to the old mm_struct */ | 2556 | /* Remove the current tasks stale references to the old mm_struct */ |
2557 | extern void mm_release(struct task_struct *, struct mm_struct *); | 2557 | extern void mm_release(struct task_struct *, struct mm_struct *); |
2558 | 2558 | ||
2559 | #ifdef CONFIG_HAVE_COPY_THREAD_TLS | ||
2560 | extern int copy_thread_tls(unsigned long, unsigned long, unsigned long, | ||
2561 | struct task_struct *, unsigned long); | ||
2562 | #else | ||
2559 | extern int copy_thread(unsigned long, unsigned long, unsigned long, | 2563 | extern int copy_thread(unsigned long, unsigned long, unsigned long, |
2560 | struct task_struct *); | 2564 | struct task_struct *); |
2565 | |||
2566 | /* Architectures that haven't opted into copy_thread_tls get the tls argument | ||
2567 | * via pt_regs, so ignore the tls argument passed via C. */ | ||
2568 | static inline int copy_thread_tls( | ||
2569 | unsigned long clone_flags, unsigned long sp, unsigned long arg, | ||
2570 | struct task_struct *p, unsigned long tls) | ||
2571 | { | ||
2572 | return copy_thread(clone_flags, sp, arg, p); | ||
2573 | } | ||
2574 | #endif | ||
2561 | extern void flush_thread(void); | 2575 | extern void flush_thread(void); |
2562 | extern void exit_thread(void); | 2576 | extern void exit_thread(void); |
2563 | 2577 | ||
@@ -2576,6 +2590,7 @@ extern int do_execveat(int, struct filename *, | |||
2576 | const char __user * const __user *, | 2590 | const char __user * const __user *, |
2577 | const char __user * const __user *, | 2591 | const char __user * const __user *, |
2578 | int); | 2592 | int); |
2593 | extern long _do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *, unsigned long); | ||
2579 | extern long do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *); | 2594 | extern long do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *); |
2580 | struct task_struct *fork_idle(int); | 2595 | struct task_struct *fork_idle(int); |
2581 | extern pid_t kernel_thread(int (*fn)(void *), void *arg, unsigned long flags); | 2596 | extern pid_t kernel_thread(int (*fn)(void *), void *arg, unsigned long flags); |