Currently, per-blkcg data is freed each time a policy is deactivated,
that is also upon scheduler switch. However, when switching from a
scheduler implementing a policy which requires per-blkcg data to
another one, that same policy might be active on other devices, and
therefore those same per-blkcg data could be still in use.
This commit lets per-blkcg data be freed when the blkcg is freed
instead of on policy deactivation.
Signed-off-by: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
Reported-and-tested-by: Michael Kaminsky <kaminsky@xxxxxxxxxx>
Fixes: e48453c3 ("block, cgroup: implement policy-specific per-blkcg data")