]> git.baikalelectronics.ru Git - kernel.git/commit
blk-mq: fix and simplify tag iteration for the timeout handler
authorChristoph Hellwig <hch@lst.de>
Sat, 13 Sep 2014 23:40:11 +0000 (16:40 -0700)
committerJens Axboe <axboe@fb.com>
Mon, 22 Sep 2014 18:00:07 +0000 (12:00 -0600)
commit78d94240348ad3fc63d8f56cfd3ac8dd0f65a2a7
tree3d4f0eaed9f784ba5beb41aa9fec3e76b867c1e8
parentd062a367249b03b744ceb563c36ea589c1004fe8
blk-mq: fix and simplify tag iteration for the timeout handler

Don't do a kmalloc from timer to handle timeouts, chances are we could be
under heavy load or similar and thus just miss out on the timeouts.
Fortunately it is very easy to just iterate over all in use tags, and doing
this properly actually cleans up the blk_mq_busy_iter API as well, and
prepares us for the next patch by passing a reserved argument to the
iterator.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-mq-tag.c
block/blk-mq.c
include/linux/blk-mq.h
include/scsi/scsi_tcq.h