diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/fork.c | 28 |
1 files changed, 1 insertions, 27 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index d9b44f20b6b0..76a1fdd80bdf 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -1410,23 +1410,6 @@ long do_fork(unsigned long clone_flags, | |||
1410 | } | 1410 | } |
1411 | 1411 | ||
1412 | /* | 1412 | /* |
1413 | * We hope to recycle these flags after 2.6.26 | ||
1414 | */ | ||
1415 | if (unlikely(clone_flags & CLONE_STOPPED)) { | ||
1416 | static int __read_mostly count = 100; | ||
1417 | |||
1418 | if (count > 0 && printk_ratelimit()) { | ||
1419 | char comm[TASK_COMM_LEN]; | ||
1420 | |||
1421 | count--; | ||
1422 | printk(KERN_INFO "fork(): process `%s' used deprecated " | ||
1423 | "clone flags 0x%lx\n", | ||
1424 | get_task_comm(comm, current), | ||
1425 | clone_flags & CLONE_STOPPED); | ||
1426 | } | ||
1427 | } | ||
1428 | |||
1429 | /* | ||
1430 | * When called from kernel_thread, don't do user tracing stuff. | 1413 | * When called from kernel_thread, don't do user tracing stuff. |
1431 | */ | 1414 | */ |
1432 | if (likely(user_mode(regs))) | 1415 | if (likely(user_mode(regs))) |
@@ -1464,16 +1447,7 @@ long do_fork(unsigned long clone_flags, | |||
1464 | */ | 1447 | */ |
1465 | p->flags &= ~PF_STARTING; | 1448 | p->flags &= ~PF_STARTING; |
1466 | 1449 | ||
1467 | if (unlikely(clone_flags & CLONE_STOPPED)) { | 1450 | wake_up_new_task(p, clone_flags); |
1468 | /* | ||
1469 | * We'll start up with an immediate SIGSTOP. | ||
1470 | */ | ||
1471 | sigaddset(&p->pending.signal, SIGSTOP); | ||
1472 | set_tsk_thread_flag(p, TIF_SIGPENDING); | ||
1473 | __set_task_state(p, TASK_STOPPED); | ||
1474 | } else { | ||
1475 | wake_up_new_task(p, clone_flags); | ||
1476 | } | ||
1477 | 1451 | ||
1478 | tracehook_report_clone_complete(trace, regs, | 1452 | tracehook_report_clone_complete(trace, regs, |
1479 | clone_flags, nr, p); | 1453 | clone_flags, nr, p); |