Hi Jens, Today's linux-next merge of the block tree got a conflict in drivers/md/dm.c between commits 3a1407559a59 ("dm: fix NULL pointer when clone_and_map_rq returns !DM_MAPIO_REMAPPED") and e5d8de32cc02 ("dm: fix false warning in free_rq_clone() for unmapped requests") from Linus' tree and commit 5f1b670d0bef ("block, dm: don't copy bios for request clones") from the block tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc drivers/md/dm.c index 2caf492890d6,38837f8ea327..000000000000 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@@ -1087,8 -1036,8 +1036,6 @@@ static void free_rq_clone(struct reques struct dm_rq_target_io *tio = clone->end_io_data; struct mapped_device *md = tio->md; - blk_rq_unprep_clone(clone); - WARN_ON_ONCE(must_be_mapped && !clone->q); -- if (md->type == DM_TYPE_MQ_REQUEST_BASED) /* stacked on blk-mq queue(s) */ tio->ti->type->release_clone_rq(clone); @@@ -1977,13 -1887,9 +1893,9 @@@ static int map_request(struct dm_rq_tar dm_kill_unmapped_request(rq, r); return r; } - if (IS_ERR(clone)) - return DM_MAPIO_REQUEUE; + if (r != DM_MAPIO_REMAPPED) + return r; - if (setup_clone(clone, rq, tio, GFP_ATOMIC)) { - /* -ENOMEM */ - ti->type->release_clone_rq(clone); - return DM_MAPIO_REQUEUE; - } + setup_clone(clone, rq, tio); } switch (r) {
Attachment:
pgpZl1zJOi1yv.pgp
Description: OpenPGP digital signature