mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
sched: remove long deprecated CLONE_STOPPED flag
This warning was added in commit bdff746a39
("clone: prepare to recycle
CLONE_STOPPED") three years ago. 2.6.26 came and went. As far as I know,
no-one is actually using CLONE_STOPPED.
Signed-off-by: Dave Jones <davej@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
5dfbd1d734
commit
43bb40c9e3
@ -21,7 +21,8 @@
|
||||
#define CLONE_DETACHED 0x00400000 /* Unused, ignored */
|
||||
#define CLONE_UNTRACED 0x00800000 /* set if the tracing process can't force CLONE_PTRACE on this clone */
|
||||
#define CLONE_CHILD_SETTID 0x01000000 /* set the TID in the child */
|
||||
#define CLONE_STOPPED 0x02000000 /* Start in stopped state */
|
||||
/* 0x02000000 was previously the unused CLONE_STOPPED (Start in stopped state)
|
||||
and is now available for re-use. */
|
||||
#define CLONE_NEWUTS 0x04000000 /* New utsname group? */
|
||||
#define CLONE_NEWIPC 0x08000000 /* New ipcs */
|
||||
#define CLONE_NEWUSER 0x10000000 /* New user namespace */
|
||||
|
@ -1409,23 +1409,6 @@ long do_fork(unsigned long clone_flags,
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
/*
|
||||
* We hope to recycle these flags after 2.6.26
|
||||
*/
|
||||
if (unlikely(clone_flags & CLONE_STOPPED)) {
|
||||
static int __read_mostly count = 100;
|
||||
|
||||
if (count > 0 && printk_ratelimit()) {
|
||||
char comm[TASK_COMM_LEN];
|
||||
|
||||
count--;
|
||||
printk(KERN_INFO "fork(): process `%s' used deprecated "
|
||||
"clone flags 0x%lx\n",
|
||||
get_task_comm(comm, current),
|
||||
clone_flags & CLONE_STOPPED);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* When called from kernel_thread, don't do user tracing stuff.
|
||||
*/
|
||||
@ -1464,16 +1447,7 @@ long do_fork(unsigned long clone_flags,
|
||||
*/
|
||||
p->flags &= ~PF_STARTING;
|
||||
|
||||
if (unlikely(clone_flags & CLONE_STOPPED)) {
|
||||
/*
|
||||
* We'll start up with an immediate SIGSTOP.
|
||||
*/
|
||||
sigaddset(&p->pending.signal, SIGSTOP);
|
||||
set_tsk_thread_flag(p, TIF_SIGPENDING);
|
||||
__set_task_state(p, TASK_STOPPED);
|
||||
} else {
|
||||
wake_up_new_task(p, clone_flags);
|
||||
}
|
||||
wake_up_new_task(p, clone_flags);
|
||||
|
||||
tracehook_report_clone_complete(trace, regs,
|
||||
clone_flags, nr, p);
|
||||
|
Loading…
Reference in New Issue
Block a user