dm: sync with upstream 5.17 and fix io accounting issue
Bugzilla: https://bugzilla.redhat.com/2043224
Bugzilla: https://bugzilla.redhat.com/2026948
Tested: device-mapper-test-quite and lvm2-testsuite and manually verified the IO accounting fix
Upstream Status: kernel/git/torvalds/linux.git
Conflicts: Commit 8464f8f8 ("block: assign bi_bdev for cloned bios in blk_rq_prep_clone") applied against block/blk-core.c instead of block/blk-mq.c due to missing upstream commit 06c8c691e2820 ("block: move request based cloning helpers to blk-mq.c")
Pull in various dm fixes from upstream. Also, because of a block I/O accounting change, IO going through dm-multipath to the underlying path devices was being double-counted for the dm device and not counted at all for the underlying device. Fix this as well.
Signed-off-by: Benjamin Marzinski bmarzins@redhat.com