diff options
Diffstat (limited to 'block/blk-cgroup.c')
-rw-r--r-- | block/blk-cgroup.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c index cafcd743118..3ad5e3fbf57 100644 --- a/block/blk-cgroup.c +++ b/block/blk-cgroup.c | |||
@@ -285,6 +285,13 @@ static void blkg_destroy_all(struct request_queue *q) | |||
285 | blkg_destroy(blkg); | 285 | blkg_destroy(blkg); |
286 | spin_unlock(&blkcg->lock); | 286 | spin_unlock(&blkcg->lock); |
287 | } | 287 | } |
288 | |||
289 | /* | ||
290 | * root blkg is destroyed. Just clear the pointer since | ||
291 | * root_rl does not take reference on root blkg. | ||
292 | */ | ||
293 | q->root_blkg = NULL; | ||
294 | q->root_rl.blkg = NULL; | ||
288 | } | 295 | } |
289 | 296 | ||
290 | static void blkg_rcu_free(struct rcu_head *rcu_head) | 297 | static void blkg_rcu_free(struct rcu_head *rcu_head) |