forked from luck/tmp_suning_uos_patched
[PATCH] copy_process: cosmetic ->ioprio tweak
copy_process: // holds tasklist_lock + ->siglock /* * inherit ioprio */ p->ioprio = current->ioprio; Why? ->ioprio was already copied in dup_task_struct(). I guess this is needed to ensure that the child can't escape sys_ioprio_set(IOPRIO_WHO_{PGRP,USER}), yes? In that case we don't need ->siglock held, and the comment should be updated. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
1c573afebc
commit
5b160f5ecd
|
@ -1150,7 +1150,6 @@ static struct task_struct *copy_process(unsigned long clone_flags,
|
|||
|
||||
/* Our parent execution domain becomes current domain
|
||||
These must match for thread signalling to apply */
|
||||
|
||||
p->parent_exec_id = p->self_exec_id;
|
||||
|
||||
/* ok, now we should be set up.. */
|
||||
|
@ -1173,6 +1172,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
|
|||
/* Need tasklist lock for parent etc handling! */
|
||||
write_lock_irq(&tasklist_lock);
|
||||
|
||||
/* for sys_ioprio_set(IOPRIO_WHO_PGRP) */
|
||||
p->ioprio = current->ioprio;
|
||||
|
||||
/*
|
||||
* The task hasn't been attached yet, so its cpus_allowed mask will
|
||||
* not be changed, nor will its assigned CPU.
|
||||
|
@ -1232,11 +1234,6 @@ static struct task_struct *copy_process(unsigned long clone_flags,
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* inherit ioprio
|
||||
*/
|
||||
p->ioprio = current->ioprio;
|
||||
|
||||
if (likely(p->pid)) {
|
||||
add_parent(p);
|
||||
if (unlikely(p->ptrace & PT_PTRACED))
|
||||
|
|
Loading…
Reference in New Issue
Block a user