dm: add WARN_ON_ONCE to dm_submit_bio_remap
If a target uses dm_submit_bio_remap() it should set ti->accounts_remapped_io. Also, switch dm_start_io_acct() WARN_ON to WARN_ON_ONCE. Signed-off-by: Mike Snitzer <snitzer@redhat.com>
This commit is contained in:
parent
b99fdcdc36
commit
0a8e9599b9
@ -541,7 +541,7 @@ static void dm_start_io_acct(struct dm_io *io, struct bio *clone)
|
|||||||
* Expect no possibility for race unless is_duplicate_bio.
|
* Expect no possibility for race unless is_duplicate_bio.
|
||||||
*/
|
*/
|
||||||
if (!clone || likely(!clone_to_tio(clone)->is_duplicate_bio)) {
|
if (!clone || likely(!clone_to_tio(clone)->is_duplicate_bio)) {
|
||||||
if (WARN_ON(io->was_accounted))
|
if (WARN_ON_ONCE(io->was_accounted))
|
||||||
return;
|
return;
|
||||||
io->was_accounted = 1;
|
io->was_accounted = 1;
|
||||||
} else if (xchg(&io->was_accounted, 1) == 1)
|
} else if (xchg(&io->was_accounted, 1) == 1)
|
||||||
@ -1202,6 +1202,8 @@ void dm_submit_bio_remap(struct bio *clone, struct bio *tgt_clone,
|
|||||||
struct dm_target_io *tio = clone_to_tio(clone);
|
struct dm_target_io *tio = clone_to_tio(clone);
|
||||||
struct dm_io *io = tio->io;
|
struct dm_io *io = tio->io;
|
||||||
|
|
||||||
|
WARN_ON_ONCE(!tio->ti->accounts_remapped_io);
|
||||||
|
|
||||||
/* establish bio that will get submitted */
|
/* establish bio that will get submitted */
|
||||||
if (!tgt_clone)
|
if (!tgt_clone)
|
||||||
tgt_clone = clone;
|
tgt_clone = clone;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user