diff options
author | NeilBrown <neilb@suse.de> | 2011-05-11 00:54:19 -0400 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2011-05-11 00:54:19 -0400 |
commit | a8830bcaf3206f15e29efcd9e04becd96a0722e9 (patch) | |
tree | 7952a9dcc4ecfda07d706095ac3a9f9d6973837b /drivers/md | |
parent | 7c4e06ff2b6a4c09638551dfde76f37f9fca5c0c (diff) |
md/raid10: make more use of 'slot' in raid10d.
Now that we have a 'slot' variable, make better use of it to simplify
some code a little.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/raid10.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 8e4f469a75b0..80cc7e63cdb7 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c | |||
@@ -1650,8 +1650,8 @@ static void raid10d(mddev_t *mddev) | |||
1650 | } | 1650 | } |
1651 | rdev_dec_pending(conf->mirrors[mirror].rdev, mddev); | 1651 | rdev_dec_pending(conf->mirrors[mirror].rdev, mddev); |
1652 | 1652 | ||
1653 | bio = r10_bio->devs[r10_bio->read_slot].bio; | 1653 | bio = r10_bio->devs[slot].bio; |
1654 | r10_bio->devs[r10_bio->read_slot].bio = | 1654 | r10_bio->devs[slot].bio = |
1655 | mddev->ro ? IO_BLOCKED : NULL; | 1655 | mddev->ro ? IO_BLOCKED : NULL; |
1656 | mirror = read_balance(conf, r10_bio); | 1656 | mirror = read_balance(conf, r10_bio); |
1657 | if (mirror == -1) { | 1657 | if (mirror == -1) { |
@@ -1665,6 +1665,7 @@ static void raid10d(mddev_t *mddev) | |||
1665 | } else { | 1665 | } else { |
1666 | const unsigned long do_sync = (r10_bio->master_bio->bi_rw & REQ_SYNC); | 1666 | const unsigned long do_sync = (r10_bio->master_bio->bi_rw & REQ_SYNC); |
1667 | bio_put(bio); | 1667 | bio_put(bio); |
1668 | slot = r10_bio->read_slot; | ||
1668 | rdev = conf->mirrors[mirror].rdev; | 1669 | rdev = conf->mirrors[mirror].rdev; |
1669 | if (printk_ratelimit()) | 1670 | if (printk_ratelimit()) |
1670 | printk(KERN_ERR "md/raid10:%s: %s: redirecting sector %llu to" | 1671 | printk(KERN_ERR "md/raid10:%s: %s: redirecting sector %llu to" |
@@ -1674,8 +1675,8 @@ static void raid10d(mddev_t *mddev) | |||
1674 | (unsigned long long)r10_bio->sector); | 1675 | (unsigned long long)r10_bio->sector); |
1675 | bio = bio_clone_mddev(r10_bio->master_bio, | 1676 | bio = bio_clone_mddev(r10_bio->master_bio, |
1676 | GFP_NOIO, mddev); | 1677 | GFP_NOIO, mddev); |
1677 | r10_bio->devs[r10_bio->read_slot].bio = bio; | 1678 | r10_bio->devs[slot].bio = bio; |
1678 | bio->bi_sector = r10_bio->devs[r10_bio->read_slot].addr | 1679 | bio->bi_sector = r10_bio->devs[slot].addr |
1679 | + rdev->data_offset; | 1680 | + rdev->data_offset; |
1680 | bio->bi_bdev = rdev->bdev; | 1681 | bio->bi_bdev = rdev->bdev; |
1681 | bio->bi_rw = READ | do_sync; | 1682 | bio->bi_rw = READ | do_sync; |