Hello, Michal.
On Thu, Nov 08, 2012 at 11:39:28AM +0100, Michal Hocko wrote:
On Sat 03-11-12 01:38:32, Tejun Heo wrote:
quoted
freezer->state was an enum value - one of THAWED, FREEZING and FROZEN.
As the scheduled full hierarchy support requires more than one
freezing condition, switch it to mask of flags. If FREEZING is not
set, it's thawed. FREEZING is set if freezing or frozen. If frozen,
both FREEZING and FROZEN are set. Now that tasks can be attached to
an already frozen cgroup, this also makes freezing condition checks
more natural.
This patch doesn't introduce any behavior change.
Signed-off-by: Tejun Heo <redacted>
I think it would be nicer to use freezer_state_flags enum rather than
unsigned int for the state. I would even expect gcc to complain about
that but it looks like -fstrict-enums is c++ specific (so long enum
safety).
But if you use it as flag bits, the resulting value no longer is
inside the defined enum values. Isn't that weird?
Thanks.
--
tejun