blk-mq: don't grab rq's refcount in blk_mq_check_expired()
Ming Lei authored
[ Upstream commit c797b40c

 ]

Inside blk_mq_queue_tag_busy_iter() we already grabbed request's
refcount before calling ->fn(), so needn't to grab it one more time
in blk_mq_check_expired().

Meantime remove extra request expire check in blk_mq_check_expired().

Cc: Keith Busch <kbusch@kernel.org>
Signed-off-by: default avatarMing Lei <ming.lei@redhat.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarJohn Garry <john.garry@huawei.com>
Link: https://lore.kernel.org/r/20210811155202.629575-1-ming.lei@redhat.com

Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
65bafad4
Name Last commit Last update
..
partitions partitions: msdos: fix one-byte get_unaligned()
Kconfig blk-wbt: Remove obsolete multiqueue I/O scheduling comment
Kconfig.iosched treewide: replace '---help---' in Kconfig files with 'help'
Makefile blk-mq: merge blk-softirq.c into blk-mq.c
badblocks.c treewide: Use fallthrough pseudo-keyword
bfq-cgroup.c block, bfq: merge bursts of newly-created queues
bfq-iosched.c block, bfq: reset waker pointer with shared queues
bfq-iosched.h block, bfq: merge bursts of newly-created queues
bfq-wf2q.c block, bfq: always inject I/O of queues blocked by wakers
bio-integrity.c block: remove BLK_BOUNCE_ISA support
bio.c block: fix trace completion for chained bio
blk-cgroup-rwstat.c blk-cgroup: Fix the recursive blkg rwstat
blk-cgroup-rwstat.h blk-cgroup: separate out blkg_rwstat under CONFIG_BLK_CGROUP_RWSTAT
blk-cgroup.c cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync
blk-core.c block: fix the problem of io_ticks becoming smaller
blk-crypto-fallback.c block: rename BIO_MAX_PAGES to BIO_MAX_VECS
blk-crypto-internal.h block: make blk_crypto_rq_bio_prep() able to fail
blk-crypto.c dm: support key eviction from keyslot managers of underlying devices
blk-exec.c block: drop removed argument from kernel-doc of blk_execute_rq()
blk-flush.c block: avoid double io accounting for flush request
blk-integrity.c block: remove the unused blk_integrity_merge_bio export
blk-ioc.c block: remove retry loop in ioc_release_fn()
blk-iocost.c blk-iocost: fix lockdep warning on blkcg->lock
blk-iolatency.c blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit()
blk-lib.c block: rename BIO_MAX_PAGES to BIO_MAX_VECS
blk-map.c
blk-merge.c
blk-mq-cpumap.c
blk-mq-debugfs-zoned.c
blk-mq-debugfs.c
blk-mq-debugfs.h
blk-mq-pci.c
blk-mq-rdma.c
blk-mq-sched.c
blk-mq-sched.h
blk-mq-sysfs.c
blk-mq-tag.c
blk-mq-tag.h
blk-mq-virtio.c
blk-mq.c
blk-mq.h
blk-pm.c
blk-pm.h
blk-rq-qos.c
blk-rq-qos.h
blk-settings.c
blk-stat.c
blk-stat.h
blk-sysfs.c
blk-throttle.c
blk-timeout.c
blk-wbt.c
blk-wbt.h
blk-zoned.c
blk.h
bounce.c
bsg-lib.c
bsg.c
cmdline-parser.c
elevator.c
genhd.c
ioctl.c
ioprio.c
keyslot-manager.c
kyber-iosched.c
mq-deadline.c
opal_proto.h
scsi_ioctl.c
sed-opal.c
t10-pi.c