block/blk-cgroup.c: free per-blkcg data when freeing the blkcg
authorArianna Avanzini <avanzini.arianna@gmail.com>
Tue, 7 Jul 2015 01:08:15 +0000 (03:08 +0200)
committerJens Axboe <axboe@fb.com>
Tue, 7 Jul 2015 13:48:51 +0000 (07:48 -0600)
commita322baad1003798312741b0cb97bd2c7511ccf61
treea5ea63b7699e989d14b853fb1b691be4819386cb
parent0762b23d23c1f23beab91a3af0fa89749b75f03c
block/blk-cgroup.c: free per-blkcg data when freeing the blkcg

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@gmail.com>
Reported-and-tested-by: Michael Kaminsky <kaminsky@cs.cmu.edu>
Fixes: e48453c3 ("block, cgroup: implement policy-specific per-blkcg data")
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-cgroup.c