diff options
author | Mike Snitzer <snitzer@kernel.org> | 2022-04-14 18:52:54 +0300 |
---|---|---|
committer | Mike Snitzer <snitzer@kernel.org> | 2022-04-15 03:01:54 +0300 |
commit | 7dd06a2548b2bf516ef2e79873a9cdd00b354b99 (patch) | |
tree | 1383e1cbfb0755d97b8fabca747438d374f5b03a /drivers/video | |
parent | 73d7b06e902dd294e1f61554f7c403d0f705cf92 (diff) | |
download | linux-7dd06a2548b2bf516ef2e79873a9cdd00b354b99.tar.xz |
dm: allow dm_accept_partial_bio() for dm_io without duplicate bios
The intent behind commit e6fc9f62ce6e ("dm: flag clones created by
__send_duplicate_bios") was to formally disallow the use of
dm_accept_partial_bio() where it simply isn't possible -- due to
constraint that multiple bios cannot meaningfully update a shared
tio->len_ptr.
But that commit went too far and disallowed the case where "abormal"
IO (e.g. WRITE_ZEROES) is only using a single bio. Fix this by
not marking a dm_io with a single dm_target_io (and bio), that happens
to be created by __send_duplicate_bios, as DM_TIO_IS_DUPLICATE_BIO.
Also remove 'unsigned *len' parameter from alloc_multiple_bios().
This commit fixes a dm_accept_partial_bio() BUG_ON() with dm-zoned
when a WRITE_ZEROES bio is issued.
Fixes: 655f3aad7aa4 ("dm: switch dm_target_io booleans over to proper flags")
Reported-by: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Diffstat (limited to 'drivers/video')
0 files changed, 0 insertions, 0 deletions