diff options
author | Dennis Zhou <dennis@kernel.org> | 2018-12-05 18:10:28 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2018-12-08 06:26:36 +0100 |
commit | beea9da07d8a6228a7e4a31a83f9478d513bf03f (patch) | |
tree | 263661b03b835c4715fbeb97c2bdbd0331233001 /block/blk-mq-virtio.c | |
parent | blkcg: update blkg_lookup_create() to do locking (diff) | |
download | linux-beea9da07d8a6228a7e4a31a83f9478d513bf03f.tar.xz linux-beea9da07d8a6228a7e4a31a83f9478d513bf03f.zip |
blkcg: convert blkg_lookup_create() to find closest blkg
There are several scenarios where blkg_lookup_create() can fail such as
the blkcg dying, request_queue is dying, or simply being OOM. Most
handle this by simply falling back to the q->root_blkg and calling it a
day.
This patch implements the notion of closest blkg. During
blkg_lookup_create(), if it fails to create, return the closest blkg
found or the q->root_blkg. blkg_try_get_closest() is introduced and used
during association so a bio is always attached to a blkg.
Signed-off-by: Dennis Zhou <dennis@kernel.org>
Acked-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-mq-virtio.c')
0 files changed, 0 insertions, 0 deletions