diff options
Diffstat (limited to 'drivers/md/dm-stripe.c')
-rw-r--r-- | drivers/md/dm-stripe.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/md/dm-stripe.c b/drivers/md/dm-stripe.c index d6e28d732b4d..22d5e2fdab8b 100644 --- a/drivers/md/dm-stripe.c +++ b/drivers/md/dm-stripe.c | |||
@@ -213,10 +213,12 @@ static int stripe_map(struct dm_target *ti, struct bio *bio, | |||
213 | struct stripe_c *sc = (struct stripe_c *) ti->private; | 213 | struct stripe_c *sc = (struct stripe_c *) ti->private; |
214 | sector_t offset, chunk; | 214 | sector_t offset, chunk; |
215 | uint32_t stripe; | 215 | uint32_t stripe; |
216 | unsigned target_request_nr; | ||
216 | 217 | ||
217 | if (unlikely(bio_empty_barrier(bio))) { | 218 | if (unlikely(bio_empty_barrier(bio))) { |
218 | BUG_ON(map_context->flush_request >= sc->stripes); | 219 | target_request_nr = map_context->target_request_nr; |
219 | bio->bi_bdev = sc->stripe[map_context->flush_request].dev->bdev; | 220 | BUG_ON(target_request_nr >= sc->stripes); |
221 | bio->bi_bdev = sc->stripe[target_request_nr].dev->bdev; | ||
220 | return DM_MAPIO_REMAPPED; | 222 | return DM_MAPIO_REMAPPED; |
221 | } | 223 | } |
222 | 224 | ||