Skip to content
Snippets Groups Projects
Commit 98aa2e7e authored by 余快's avatar 余快 Committed by Yang Yingliang
Browse files

dm multipath: fix missing blk_account_io_done() in error path

hulk inclusion
category: bugfix
bugzilla: 186143, https://gitee.com/openeuler/kernel/issues/I4WC06


CVE: NA

-----------------------------------------------

If precise_iostat is enabled, inflight will be recorded and cleared by
atomic operations. However, for dm multipath, inflight will be recorded
by dm_requeue_original_request(), and if some error happened,
multipath_release_clone() won't clear inflight, which will cause
inflight to leak. Furthermore, %util will always be 100 in iostat.

Fix the problem by calling __blk_mq_end_request() in
multipath_release_clone() instead.

Signed-off-by: default avatarYu Kuai <yukuai3@huawei.com>
Signed-off-by: default avatarZhang Wensheng <zhangwensheng5@huawei.com>
Reviewed-by: default avatarJason Yan <yanaijie@huawei.com>
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
parent 7165cb45
No related branches found
No related tags found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment