[kernel] r15670 - in dists/lenny/linux-2.6/debian: . patches/bugfix/all patches/series

Ben Hutchings benh at alioth.debian.org
Thu May 13 01:07:30 UTC 2010


Author: benh
Date: Thu May 13 01:07:29 2010
New Revision: 15670

Log:
raid456: Fix two bugs in handling of degraded states (Closes: #581392)

Added:
   dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid5-run-Fix-max_degraded-for-raid-level-4.patch
   dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid6-Fix-raid-6-read-error-correction-in-degraded-state.patch
Modified:
   dists/lenny/linux-2.6/debian/changelog
   dists/lenny/linux-2.6/debian/patches/series/23

Modified: dists/lenny/linux-2.6/debian/changelog
==============================================================================
--- dists/lenny/linux-2.6/debian/changelog	Wed May 12 22:57:09 2010	(r15669)
+++ dists/lenny/linux-2.6/debian/changelog	Thu May 13 01:07:29 2010	(r15670)
@@ -10,6 +10,9 @@
     (partial fix for #564110; CVE-2009-4537)
   * megaraid_sas: Version and documentation update (Closes: #547183)
   * bnx2: Fix lost MSI-X problem on 5709 NICs (Closes: #581001)
+  * raid456: Fix two bugs in handling of degraded states (Closes: #581392)
+    - Prevent reshaping of doubly-degraded RAID4
+    - Enable error-correction on singly-degraded RAID6
 
   [ maximilian attems ]
   * openvz: printk_cpu have to be "cleared" in __vprintk (v2)

Added: dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid5-run-Fix-max_degraded-for-raid-level-4.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid5-run-Fix-max_degraded-for-raid-level-4.patch	Thu May 13 01:07:29 2010	(r15670)
@@ -0,0 +1,29 @@
+From 18b0033491f584a2d79697da714b1ef9d6b27d22 Mon Sep 17 00:00:00 2001
+From: Andre Noll <maan at systemlinux.org>
+Date: Tue, 31 Mar 2009 15:00:56 +1100
+Subject: [PATCH] md: raid5 run(): Fix max_degraded for raid level 4.
+
+raid4 allows only one failed disk.
+
+Signed-off-by: Andre Noll <maan at systemlinux.org>
+Signed-off-by: NeilBrown <neilb at suse.de>
+---
+ drivers/md/raid5.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
+index 1aebd3e..e1ee181 100644
+--- a/drivers/md/raid5.c
++++ b/drivers/md/raid5.c
+@@ -4331,7 +4331,7 @@ static int run(mddev_t *mddev)
+ 		 */
+ 		sector_t here_new, here_old;
+ 		int old_disks;
+-		int max_degraded = (mddev->level == 5 ? 1 : 2);
++		int max_degraded = (mddev->level == 6 ? 2 : 1);
+ 
+ 		if (mddev->new_level != mddev->level ||
+ 		    mddev->new_layout != mddev->layout ||
+-- 
+1.7.1
+

Added: dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid6-Fix-raid-6-read-error-correction-in-degraded-state.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/lenny/linux-2.6/debian/patches/bugfix/all/md-raid6-Fix-raid-6-read-error-correction-in-degraded-state.patch	Thu May 13 01:07:29 2010	(r15670)
@@ -0,0 +1,34 @@
+From 87aa63000c484bfb9909989316f615240dfee018 Mon Sep 17 00:00:00 2001
+From: Gabriele A. Trombetti <g.trombetti.lkrnl1213 at logicschema.com>
+Date: Wed, 28 Apr 2010 11:51:17 +1000
+Subject: [PATCH] md/raid6: Fix raid-6 read-error correction in degraded state
+
+Fix: Raid-6 was not trying to correct a read-error when in
+singly-degraded state and was instead dropping one more device, going to
+doubly-degraded state. This patch fixes this behaviour.
+
+Tested-by: Janos Haar <janos.haar at netcenter.hu>
+Signed-off-by: Gabriele A. Trombetti <g.trombetti.lkrnl1213 at logicschema.com>
+Reported-by: Janos Haar <janos.haar at netcenter.hu>
+Signed-off-by: NeilBrown <neilb at suse.de>
+Cc: stable at kernel.org
+---
+ drivers/md/raid5.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
+index 58ea0ec..15348c3 100644
+--- a/drivers/md/raid5.c
++++ b/drivers/md/raid5.c
+@@ -1527,7 +1527,7 @@ static void raid5_end_read_request(struct bio * bi, int error)
+ 
+ 		clear_bit(R5_UPTODATE, &sh->dev[i].flags);
+ 		atomic_inc(&rdev->read_errors);
+-		if (conf->mddev->degraded)
++		if (conf->mddev->degraded >= conf->max_degraded)
+ 			printk_rl(KERN_WARNING
+ 				  "raid5:%s: read error not correctable "
+ 				  "(sector %llu on %s).\n",
+-- 
+1.7.1
+

Modified: dists/lenny/linux-2.6/debian/patches/series/23
==============================================================================
--- dists/lenny/linux-2.6/debian/patches/series/23	Wed May 12 22:57:09 2010	(r15669)
+++ dists/lenny/linux-2.6/debian/patches/series/23	Thu May 13 01:07:29 2010	(r15670)
@@ -4,3 +4,5 @@
 + bugfix/all/megaraid_sas-version-and-Documentation-Update.patch
 + bugfix/sparc/sunxvr500-ignore-secondary-output-devices.patch
 + bugfix/all/bnx2-Fix-lost-MSI-X-problem-on-5709-NICs.patch
++ bugfix/all/md-raid5-run-Fix-max_degraded-for-raid-level-4.patch
++ bugfix/all/md-raid6-Fix-raid-6-read-error-correction-in-degraded-state.patch



More information about the Kernel-svn-changes mailing list