diff options
Diffstat (limited to 'libre/linux-libre-aufs_friendly/md-raid10-fix-bug-when-activating-a-hot-spare.patch')
-rw-r--r-- | libre/linux-libre-aufs_friendly/md-raid10-fix-bug-when-activating-a-hot-spare.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/libre/linux-libre-aufs_friendly/md-raid10-fix-bug-when-activating-a-hot-spare.patch b/libre/linux-libre-aufs_friendly/md-raid10-fix-bug-when-activating-a-hot-spare.patch new file mode 100644 index 000000000..880849db5 --- /dev/null +++ b/libre/linux-libre-aufs_friendly/md-raid10-fix-bug-when-activating-a-hot-spare.patch @@ -0,0 +1,40 @@ +From 7fcc7c8acf0fba44d19a713207af7e58267c1179 Mon Sep 17 00:00:00 2001 +From: NeilBrown <neilb@suse.de> +Date: Mon, 31 Oct 2011 12:59:44 +1100 +Subject: md/raid10: Fix bug when activating a hot-spare. + +From: NeilBrown <neilb@suse.de> + +commit 7fcc7c8acf0fba44d19a713207af7e58267c1179 upstream. + +This is a fairly serious bug in RAID10. + +When a RAID10 array is degraded and a hot-spare is activated, the +spare does not take up the empty slot, but rather replaces the first +working device. +This is likely to make the array non-functional. It would normally +be possible to recover the data, but that would need care and is not +guaranteed. + +This bug was introduced in commit + 2bb77736ae5dca0a189829fbb7379d43364a9dac +which first appeared in 3.1. + +Signed-off-by: NeilBrown <neilb@suse.de> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/md/raid10.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/md/raid10.c ++++ b/drivers/md/raid10.c +@@ -1337,7 +1337,7 @@ static int raid10_add_disk(mddev_t *mdde + mirror_info_t *p = &conf->mirrors[mirror]; + if (p->recovery_disabled == mddev->recovery_disabled) + continue; +- if (!p->rdev) ++ if (p->rdev) + continue; + + disk_stack_limits(mddev->gendisk, rdev->bdev, |