kthread: reduce stack pressure in create_kthread and kthreadd

* Replace:

  	set_cpus_allowed(..., CPU_MASK_ALL)

    with:

  	set_cpus_allowed_ptr(..., CPU_MASK_ALL_PTR)

    to remove excessive stack requirements when NR_CPUS=4096.

Signed-off-by: Mike Travis <travis@sgi.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Mike Travis 2008-07-08 15:55:48 -07:00 committed by Ingo Molnar
parent 8b95d9172b
commit 8df185a95c

View file

@ -106,7 +106,7 @@ static void create_kthread(struct kthread_create_info *create)
*/ */
sched_setscheduler(create->result, SCHED_NORMAL, &param); sched_setscheduler(create->result, SCHED_NORMAL, &param);
set_user_nice(create->result, KTHREAD_NICE_LEVEL); set_user_nice(create->result, KTHREAD_NICE_LEVEL);
set_cpus_allowed(create->result, CPU_MASK_ALL); set_cpus_allowed_ptr(create->result, CPU_MASK_ALL_PTR);
} }
complete(&create->done); complete(&create->done);
} }
@ -233,7 +233,7 @@ int kthreadd(void *unused)
set_task_comm(tsk, "kthreadd"); set_task_comm(tsk, "kthreadd");
ignore_signals(tsk); ignore_signals(tsk);
set_user_nice(tsk, KTHREAD_NICE_LEVEL); set_user_nice(tsk, KTHREAD_NICE_LEVEL);
set_cpus_allowed(tsk, CPU_MASK_ALL); set_cpus_allowed_ptr(tsk, CPU_MASK_ALL_PTR);
current->flags |= PF_NOFREEZE | PF_FREEZER_NOSIG; current->flags |= PF_NOFREEZE | PF_FREEZER_NOSIG;