Re: [PATCH v10 4/9] cgroup: cgroup v2 freezer
From: Oleg Nesterov
Date: Fri Apr 26 2019 - 13:40:25 EST
On 04/24, Roman Gushchin wrote:
> On Wed, Apr 24, 2019 at 05:46:19PM +0200, Oleg Nesterov wrote:
> > OK, how about the ABSOLUTELY UNTESTED patch below? For the start.
> It looks good to me (and all freezer selftests pass).
> Just to be sure, is it a solution to avoid the busy loop in the signal handling
> loop, right?
> Because it doesn't allow to drop the ->frozen check from recalc().
Yes. Because we can race with unfreeze after leave_frozen().
> The JOBCTL_TRAP_FREEZE check without siglock initially looked dangerous to me,
> but after some thoughts I didn't find any case when it's wrong.
I think this is fine... Yes, JOBCTL_TRAP_FREEZE can be already set when we take
siglock, but I don't think we need to recheck this flag.
The only important thing (afaics) is that CGRP_FREEZE is stable under css_set_lock,
so we can't wrongly set TRAP_FREEZE.
> Do you prefer me to master a patch
Yes please ;)