If del_gendisk() is done when some io are still throttled, such ioFriendly ping...
will not be handled until the throttle is done, which is not
necessary.
Changes in v2:
- move WARN_ON_ONCE() from throtl_rb_first() to it's caller
- merge some patches into one.
Changes in v3:
- some code optimization in patch 1
- hold queue lock to cancel bios in patch 2
Changes in v4:
- delete rcu_read_lock() and rcu_read_unlock() in patch 2
Changes in v5:
- add comment about rcu lock
Yu Kuai (2):
blk-throtl: move WARN_ON_ONCE() from throtl_rb_first() to it's caller
block: cancel all throttled bios in del_gendisk()
block/blk-throttle.c | 75 ++++++++++++++++++++++++++++++++++++++++++--
block/blk-throttle.h | 2 ++
block/genhd.c | 2 ++
3 files changed, 76 insertions(+), 3 deletions(-)