linux-next: manual merge of the block tree with Linus' tree

From: Stephen Rothwell
Date: Mon Jun 01 2015 - 00:56:44 EST


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: pgpmuKdBQcDcl.pgp
Description: OpenPGP digital signature