summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPhilipp Reisner <philipp.reisner@linbit.com>2011-06-29 14:06:08 +0200
committerPhilipp Reisner <philipp.reisner@linbit.com>2012-05-09 15:10:45 +0200
commitdfa8bedbfe881caf6676704ab1aae18dfe8e430a (patch)
tree416102d8cd59c6be45b072c2ce123c6cb8f63f52 /include
parent02ee8f95fadf7c94b3d28df436a095152f6392b2 (diff)
downloadblackbird-op-linux-dfa8bedbfe881caf6676704ab1aae18dfe8e430a.tar.gz
blackbird-op-linux-dfa8bedbfe881caf6676704ab1aae18dfe8e430a.zip
drbd: Implemented the disk-timeout option
When the disk-timeout is active, and it expires for a single request, we consider the local disk as D_FAILED. Note: With this change, I made both timeout based state transitions HARD state transitions. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/drbd_limits.h5
-rw-r--r--include/linux/drbd_nl.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/drbd_limits.h b/include/linux/drbd_limits.h
index 928c84dfaf42..fb670bf603f7 100644
--- a/include/linux/drbd_limits.h
+++ b/include/linux/drbd_limits.h
@@ -48,6 +48,11 @@
#define DRBD_TIMEOUT_MAX 600
#define DRBD_TIMEOUT_DEF 60 /* 6 seconds */
+ /* If backing disk takes longer than disk_timeout, mark the disk as failed */
+#define DRBD_DISK_TIMEOUT_MIN 0 /* 0 = disabled */
+#define DRBD_DISK_TIMEOUT_MAX 6000 /* 10 Minutes */
+#define DRBD_DISK_TIMEOUT_DEF 0 /* disabled */
+
/* active connection retries when C_WF_CONNECTION */
#define DRBD_CONNECT_INT_MIN 1
#define DRBD_CONNECT_INT_MAX 120
diff --git a/include/linux/drbd_nl.h b/include/linux/drbd_nl.h
index 7203c9ead233..a8706f08ab36 100644
--- a/include/linux/drbd_nl.h
+++ b/include/linux/drbd_nl.h
@@ -31,6 +31,7 @@ NL_PACKET(disk_conf, 3,
NL_INTEGER( 56, T_MAY_IGNORE, max_bio_bvecs)
NL_BIT( 57, T_MAY_IGNORE, no_disk_barrier)
NL_BIT( 58, T_MAY_IGNORE, no_disk_drain)
+ NL_INTEGER( 89, T_MAY_IGNORE, disk_timeout)
)
NL_PACKET(detach, 4,
OpenPOWER on IntegriCloud