aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Reisner <philipp.reisner@linbit.com>2011-03-14 06:54:47 -0400
committerPhilipp Reisner <philipp.reisner@linbit.com>2011-05-24 04:05:48 -0400
commitd2e17807e3799bae24664a92f4d2d3dade021e00 (patch)
tree7e3abd6d91be6fac6d90b3d3adf21f8b1418736a
parentf36af18c7b4ea1ba333c09b606bb4a7e5af66b4d (diff)
drbd: Only downgrade the disk state in case of disk failures
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
-rw-r--r--drivers/block/drbd/drbd_int.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
index 2c38752ca8d6..5c994739d11e 100644
--- a/drivers/block/drbd/drbd_int.h
+++ b/drivers/block/drbd/drbd_int.h
@@ -1827,7 +1827,8 @@ static inline void __drbd_chk_io_error_(struct drbd_conf *mdev, int forcedetach,
1827 if (!forcedetach) { 1827 if (!forcedetach) {
1828 if (__ratelimit(&drbd_ratelimit_state)) 1828 if (__ratelimit(&drbd_ratelimit_state))
1829 dev_err(DEV, "Local IO failed in %s.\n", where); 1829 dev_err(DEV, "Local IO failed in %s.\n", where);
1830 _drbd_set_state(_NS(mdev, disk, D_INCONSISTENT), CS_HARD, NULL); 1830 if (mdev->state.disk > D_INCONSISTENT)
1831 _drbd_set_state(_NS(mdev, disk, D_INCONSISTENT), CS_HARD, NULL);
1831 break; 1832 break;
1832 } 1833 }
1833 /* NOTE fall through to detach case if forcedetach set */ 1834 /* NOTE fall through to detach case if forcedetach set */