| Date | Sun, 28 Aug 2011 19:51:16 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH 08/16] freezer: use dedicated lock instead of task_lock() + memory barrier |
| |
On 08/19, Tejun Heo wrote: > > it's by no means a > hot path and the priority is staying unintrusive and safe. This patch > makes it simply use a dedicated lock
Agreed. but could you explain why it should be irq-safe? This is not clear from the changelog.
> + if (!(current->flags & PF_NOFREEZE)) > + current->flags |= PF_FROZEN;
it is not clear why do we check PF_NOFREEZE... but OK, iiuc you remove this check later anyway.
Off-topic, but fake_signal_wake_up() is not safe if the caller try_to_freeze_cgroup(). Unlike try_to_freeze_tasks() (which holds tasklist) we can race with the exiting thread, ->sighand can be NULL.
Oleg.
|