diff options
author | NeilBrown <neilb@suse.de> | 2010-10-07 12:00:50 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2010-10-07 12:00:50 +1100 |
commit | db8d9d3591f77cc6b66248b2cdfa1c43deee5ec9 (patch) | |
tree | 2b8e727bc5f74883620934d3334323ce501c853e | |
parent | 7571ae887d3b96d8e7ce63d43828866c6a91cdc6 (diff) | |
download | linux-exynos-db8d9d3591f77cc6b66248b2cdfa1c43deee5ec9.tar.gz linux-exynos-db8d9d3591f77cc6b66248b2cdfa1c43deee5ec9.tar.bz2 linux-exynos-db8d9d3591f77cc6b66248b2cdfa1c43deee5ec9.zip |
md/raid1: minor bio initialisation improvements.
When performing a resync we pre-allocate some bios and repeatedly use
them. This requires us to re-initialise them each time.
One field (bi_comp_cpu) and some flags weren't being initiaised
reliably.
Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r-- | drivers/md/raid1.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c index fba4d2feaeb4..0b830bbe1d8b 100644 --- a/drivers/md/raid1.c +++ b/drivers/md/raid1.c @@ -1839,7 +1839,9 @@ static sector_t sync_request(mddev_t *mddev, sector_t sector_nr, int *skipped, i /* take from bio_init */ bio->bi_next = NULL; + bio->bi_flags &= ~(BIO_POOL_MASK-1); bio->bi_flags |= 1 << BIO_UPTODATE; + bio->bi_comp_cpu = -1; bio->bi_rw = READ; bio->bi_vcnt = 0; bio->bi_idx = 0; |