Re: [PATCH v14 02/14] cgroup/misc: Add per resource callbacks for CSS events
From: Haitao Huang
Date: Thu Jun 06 2024 - 11:15:11 EST
On Thu, 06 Jun 2024 08:37:31 -0500, chenridong <chenridong@xxxxxxxxxx>
wrote:
If _misc_cg_res_alloc fails, maybe some types do not call ->alloc(), but
all types ->free() callback >will be called, is that ok?
Not sure I understand. Are you suggesting we ignore failures from
->alloc() callback in _misc_cg_res_alloc() as it is per-resource, and have
->free() callback and resource provider of the failing type to handle the
failure internally?
IIUC, this failure only happens when a specific subcgroup is created
(memory running out for allocation) so failing that subcgroup as a whole
seems fine to me. Note the root node is static and no pre-resource
callbacks invoked by misc. And resource provider handles its own
allocations for root. In SGX case we too declare a static object for
corresponding root sgx_cgroup struct.
Note also misc cgroup (except for setting capacity[res] = 0 at root) is
all or nothing so no mechanism to tell user "this resource does not work
but others are fine in this particular cgroup."
Thanks
Haitao