diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-04-04 08:31:06 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-04-04 08:31:06 -0700 |
commit | 36bbffc0d55fbb7ab2c2de2613e3bbb0a6749b9b (patch) | |
tree | c3091d2eb5cc6f451ce0fcee6bfb2fed63db56e9 /drivers/md/raid10.c | |
parent | 20a2a811602b16c42ce88bada3d52712cdfb988b (diff) | |
parent | 5020ad7d143ccfcf8149974096220d59e5572120 (diff) |
Merge tag 'md-3.4-fixes' of git://neil.brown.name/md
Pull assorted md fixes from Neil Brown:
- some RAID levels didn't clear up properly if md_integrity_register
failed
- a 'check' of RAID5/RAID6 doesn't actually read any data since a
recent patch - so fix that (and mark for -stable)
- a couple of other minor bugs.
* tag 'md-3.4-fixes' of git://neil.brown.name/md:
md/raid1,raid10: don't compare excess byte during consistency check.
md/raid5: Fix a bug about judging if the operation is syncing or replacing
md/raid1:Remove unnecessary rcu_dereference(conf->mirrors[i].rdev).
md: Avoid OOPS when reshaping raid1 to raid0
md/raid5: fix handling of bad blocks during recovery.
md/raid1: If md_integrity_register() failed,run() must free the mem
md/raid0: If md_integrity_register() fails, raid0_run() must free the mem.
md/linear: If md_integrity_register() fails, linear_run() must free the mem.
Diffstat (limited to 'drivers/md/raid10.c')
-rw-r--r-- | drivers/md/raid10.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 3540316886f..fff782189e4 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c @@ -1821,7 +1821,7 @@ static void sync_request_write(struct mddev *mddev, struct r10bio *r10_bio) for (j = 0; j < vcnt; j++) if (memcmp(page_address(fbio->bi_io_vec[j].bv_page), page_address(tbio->bi_io_vec[j].bv_page), - PAGE_SIZE)) + fbio->bi_io_vec[j].bv_len)) break; if (j == vcnt) continue; |