kthread: Don't looking for a task in create_kthread() #2
Remove the unnecessary find_task_by_pid_ns(). kthread() can just use "current" to get the same result. Signed-off-by: Vitaliy Gusev <vgusev@openvz.org> Acked-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Родитель
7b85a88ca7
Коммит
3217ab97f1
|
@ -76,6 +76,7 @@ static int kthread(void *_create)
|
||||||
|
|
||||||
/* OK, tell user we're spawned, wait for stop or wakeup */
|
/* OK, tell user we're spawned, wait for stop or wakeup */
|
||||||
__set_current_state(TASK_UNINTERRUPTIBLE);
|
__set_current_state(TASK_UNINTERRUPTIBLE);
|
||||||
|
create->result = current;
|
||||||
complete(&create->started);
|
complete(&create->started);
|
||||||
schedule();
|
schedule();
|
||||||
|
|
||||||
|
@ -101,9 +102,6 @@ static void create_kthread(struct kthread_create_info *create)
|
||||||
} else {
|
} else {
|
||||||
struct sched_param param = { .sched_priority = 0 };
|
struct sched_param param = { .sched_priority = 0 };
|
||||||
wait_for_completion(&create->started);
|
wait_for_completion(&create->started);
|
||||||
read_lock(&tasklist_lock);
|
|
||||||
create->result = find_task_by_pid_ns(pid, &init_pid_ns);
|
|
||||||
read_unlock(&tasklist_lock);
|
|
||||||
/*
|
/*
|
||||||
* root may have changed our (kthreadd's) priority or CPU mask.
|
* root may have changed our (kthreadd's) priority or CPU mask.
|
||||||
* The kernel thread should not inherit these properties.
|
* The kernel thread should not inherit these properties.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче