blk-mq: make lifetime consistent between hctx and its kobject
authorMing Lei <tom.leiming@gmail.com>
Wed, 22 Feb 2017 10:14:01 +0000 (18:14 +0800)
committerJens Axboe <axboe@fb.com>
Fri, 3 Mar 2017 15:34:19 +0000 (08:34 -0700)
commitd35871925760aad719dd59c140837ed7b25de17f
tree4947087b6c88a3e9c8edc03dd046852ebe7547fe
parentdf916e8512a0f311c37ee6782c6be6ec8f2012fb
blk-mq: make lifetime consistent between hctx and its kobject

This patch removes kobject_put() over hctx in __blk_mq_unregister_dev(),
and trys to keep lifetime consistent between hctx and hctx's kobject.

Now blk_mq_sysfs_register() and blk_mq_sysfs_unregister() become
totally symmetrical, and kobject's refcounter drops to zero just
when the hctx is freed.

Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-mq-sysfs.c
block/blk-mq.c