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

From: Stephen Rothwell
Date: Thu Oct 31 2013 - 23:25:33 EST


Hi Jens,

Today's linux-next merge of the block tree got a conflict in
drivers/md/raid5.c between commit 37c61ff31e9b ("raid5: set bio bi_vcnt 0
for discard request") from Linus' tree and commit ed2d2f9a8265 ("block:
Abstract out bvec iterator") 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/raid5.c
index f8b906843926,e00beb5d2e88..000000000000
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@@ -777,13 -777,7 +777,13 @@@ static void ops_run_io(struct stripe_he
bi->bi_vcnt = 1;
bi->bi_io_vec[0].bv_len = STRIPE_SIZE;
bi->bi_io_vec[0].bv_offset = 0;
- bi->bi_size = STRIPE_SIZE;
+ bi->bi_iter.bi_size = STRIPE_SIZE;
+ /*
+ * If this is discard request, set bi_vcnt 0. We don't
+ * want to confuse SCSI because SCSI will replace payload
+ */
+ if (rw & REQ_DISCARD)
+ bi->bi_vcnt = 0;
if (rrdev)
set_bit(R5_DOUBLE_LOCKED, &sh->dev[i].flags);

@@@ -821,13 -815,7 +821,13 @@@
rbi->bi_vcnt = 1;
rbi->bi_io_vec[0].bv_len = STRIPE_SIZE;
rbi->bi_io_vec[0].bv_offset = 0;
- rbi->bi_size = STRIPE_SIZE;
+ rbi->bi_iter.bi_size = STRIPE_SIZE;
+ /*
+ * If this is discard request, set bi_vcnt 0. We don't
+ * want to confuse SCSI because SCSI will replace payload
+ */
+ if (rw & REQ_DISCARD)
+ rbi->bi_vcnt = 0;
if (conf->mddev->gendisk)
trace_block_bio_remap(bdev_get_queue(rbi->bi_bdev),
rbi, disk_devt(conf->mddev->gendisk),

Attachment: pgp00000.pgp
Description: PGP signature