depends on Eric's
kthread-dont-depend-on-work-queues-take-2.patch
worker_thread() inherits ignored SIGCHLD from its parent, kthreadd.
We can remove unneeded do_sigaction().
Signed-off-by: Oleg Nesterov <[email protected]>
--- OLD/kernel/workqueue.c~wt 2007-04-05 12:20:35.000000000 +0400
+++ OLD/kernel/workqueue.c 2007-04-13 11:21:43.000000000 +0400
@@ -289,7 +289,6 @@ static int worker_thread(void *__cwq)
{
struct cpu_workqueue_struct *cwq = __cwq;
DEFINE_WAIT(wait);
- struct k_sigaction sa;
if (!cwq->wq->freezeable)
current->flags |= PF_NOFREEZE;
@@ -300,12 +299,6 @@ static int worker_thread(void *__cwq)
*/
numa_default_policy();
- /* SIG_IGN makes children autoreap: see do_notify_parent(). */
- sa.sa.sa_handler = SIG_IGN;
- sa.sa.sa_flags = 0;
- siginitset(&sa.sa.sa_mask, sigmask(SIGCHLD));
- do_sigaction(SIGCHLD, &sa, (struct k_sigaction *)0);
-
for (;;) {
if (cwq->wq->freezeable)
try_to_freeze();
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]