[PATCH 01/22] md: Avoid oops when attempting to fix read errors on raid10

Chris Wright
2006-05-17T22:18:17Z

[-- Attachment #1: md-avoid-oops-when-attempting-to-fix-read-errors-on-raid10.patch --]
[-- Type: text/plain, Size: 951 bytes --]

-stable review patch. If anyone has any objections, please let us know.
------------------

We should add to the counter for the rdev *after* checking if the rdev is
NULL!!!

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
---
drivers/md/raid10.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.16.16.orig/drivers/md/raid10.c
+++ linux-2.6.16.16/drivers/md/raid10.c
@@ -1436,9 +1436,9 @@ static void raid10d(mddev_t *mddev)
sl--;
d = r10_bio->devs[sl].devnum;
rdev = conf->mirrors[d].rdev;
- atomic_add(s, &rdev->corrected_errors);
if (rdev &&
test_bit(In_sync, &rdev->flags)) {
+ atomic_add(s, &rdev->corrected_errors);
if (sync_page_io(rdev->bdev,
r10_bio->devs[sl].addr +
sect + rdev->data_offset,

--