Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / block / drbd / Kconfig
diff --git a/kernel/drivers/block/drbd/Kconfig b/kernel/drivers/block/drbd/Kconfig
new file mode 100644 (file)
index 0000000..7845bd6
--- /dev/null
@@ -0,0 +1,73 @@
+#
+# DRBD device driver configuration
+#
+
+comment "DRBD disabled because PROC_FS or INET not selected"
+       depends on PROC_FS='n' || INET='n'
+
+config BLK_DEV_DRBD
+       tristate "DRBD Distributed Replicated Block Device support"
+       depends on PROC_FS && INET
+       select LRU_CACHE
+       select LIBCRC32C
+       default n
+       help
+
+         NOTE: In order to authenticate connections you have to select
+         CRYPTO_HMAC and a hash function as well.
+
+         DRBD is a shared-nothing, synchronously replicated block device. It
+         is designed to serve as a building block for high availability
+         clusters and in this context, is a "drop-in" replacement for shared
+         storage. Simplistically, you could see it as a network RAID 1.
+
+         Each minor device has a role, which can be 'primary' or 'secondary'.
+         On the node with the primary device the application is supposed to
+         run and to access the device (/dev/drbdX). Every write is sent to
+         the local 'lower level block device' and, across the network, to the
+         node with the device in 'secondary' state.  The secondary device
+         simply writes the data to its lower level block device.
+
+         DRBD can also be used in dual-Primary mode (device writable on both
+         nodes), which means it can exhibit shared disk semantics in a
+         shared-nothing cluster.  Needless to say, on top of dual-Primary
+         DRBD utilizing a cluster file system is necessary to maintain for
+         cache coherency.
+
+         For automatic failover you need a cluster manager (e.g. heartbeat).
+         See also: http://www.drbd.org/, http://www.linux-ha.org
+
+         If unsure, say N.
+
+config DRBD_FAULT_INJECTION
+       bool "DRBD fault injection"
+       depends on BLK_DEV_DRBD
+       help
+
+         Say Y here if you want to simulate IO errors, in order to test DRBD's
+         behavior.
+
+         The actual simulation of IO errors is done by writing 3 values to
+         /sys/module/drbd/parameters/
+
+         enable_faults: bitmask of...
+         1     meta data write
+         2               read
+         4     resync data write
+         8                 read
+         16    data write
+         32    data read
+         64    read ahead
+         128   kmalloc of bitmap
+         256   allocation of peer_requests
+         512   insert data corruption on receiving side
+
+         fault_devs: bitmask of minor numbers
+         fault_rate: frequency in percent
+
+         Example: Simulate data write errors on /dev/drbd0 with a probability of 5%.
+               echo 16 > /sys/module/drbd/parameters/enable_faults
+               echo 1 > /sys/module/drbd/parameters/fault_devs
+               echo 5 > /sys/module/drbd/parameters/fault_rate
+
+         If unsure, say N.