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:Yu Kuai <yukuai3@huawei.com> Signed-off-by:
Zhang Wensheng <zhangwensheng5@huawei.com> Reviewed-by:
Jason Yan <yanaijie@huawei.com> Signed-off-by:
Yang Yingliang <yangyingliang@huawei.com>
Please register or sign in to comment