/* SPDX-License-Identifier: GPL-2.0-only */ /* drbd_limits.h This file is part of DRBD by Philipp Reisner and Lars Ellenberg.
*/
/* * Our current limitations. * Some of them are hard limits, * some of them are arbitrary range limits, that make it easier to provide * feedback about nonsense settings for certain configurable values.
*/
/* net { */ /* timeout, unit centi seconds
* more than one minute timeout is not useful */ #define DRBD_TIMEOUT_MIN 1U #define DRBD_TIMEOUT_MAX 600U #define DRBD_TIMEOUT_DEF 60U /* 6 seconds */ #define DRBD_TIMEOUT_SCALE '1'
/* If backing disk takes longer than disk_timeout, mark the disk as failed */ #define DRBD_DISK_TIMEOUT_MIN 0U /* 0 = disabled */ #define DRBD_DISK_TIMEOUT_MAX 6000U /* 10 Minutes */ #define DRBD_DISK_TIMEOUT_DEF 0U /* disabled */ #define DRBD_DISK_TIMEOUT_SCALE '1'
/* timeout for the ping packets.*/ #define DRBD_PING_TIMEO_MIN 1U #define DRBD_PING_TIMEO_MAX 300U #define DRBD_PING_TIMEO_DEF 5U #define DRBD_PING_TIMEO_SCALE '1'
/* max number of write requests between write barriers */ #define DRBD_MAX_EPOCH_SIZE_MIN 1U #define DRBD_MAX_EPOCH_SIZE_MAX 20000U #define DRBD_MAX_EPOCH_SIZE_DEF 2048U #define DRBD_MAX_EPOCH_SIZE_SCALE '1'
/* I don't think that a tcp send buffer of more than 10M is useful */ #define DRBD_SNDBUF_SIZE_MIN 0U #define DRBD_SNDBUF_SIZE_MAX (10U<<20) #define DRBD_SNDBUF_SIZE_DEF 0U #define DRBD_SNDBUF_SIZE_SCALE '1'
/* 0 is disabled.
* 200 should be more than enough even for very short timeouts */ #define DRBD_KO_COUNT_MIN 0U #define DRBD_KO_COUNT_MAX 200U #define DRBD_KO_COUNT_DEF 7U #define DRBD_KO_COUNT_SCALE '1' /* } */
/* syncer { */ /* FIXME allow rate to be zero? */ #define DRBD_RESYNC_RATE_MIN 1U /* channel bonding 10 GbE, or other hardware */ #define DRBD_RESYNC_RATE_MAX (4 << 20) #define DRBD_RESYNC_RATE_DEF 250U #define DRBD_RESYNC_RATE_SCALE 'k'/* kilobytes */
#define DRBD_AL_EXTENTS_MIN 67U /* we use u16 as "slot number", (u16)~0 is "FREE". * If you use >= 292 kB on-disk ring buffer,
* this is the maximum you can use: */ #define DRBD_AL_EXTENTS_MAX 0xfffeU #define DRBD_AL_EXTENTS_DEF 1237U #define DRBD_AL_EXTENTS_SCALE '1'
/* drbdsetup XY resize -d Z * you are free to reduce the device size to nothing, if you want to. * the upper limit with 64bit kernel, enough ram and flexible meta data
* is 1 PiB, currently. */ /* DRBD_MAX_SECTORS */ #define DRBD_DISK_SIZE_MIN 0LLU #define DRBD_DISK_SIZE_MAX (1LLU * (2LLU << 40)) #define DRBD_DISK_SIZE_DEF 0LLU /* = disabled = no user size... */ #define DRBD_DISK_SIZE_SCALE 's'/* sectors */
/* We used to ignore the discard_zeroes_data setting. * To not change established (and expected) behaviour, * by default assume that, for discard_zeroes_data=0, * we can make that an effective discard_zeroes_data=1,
* if we only explicitly zero-out unaligned partial chunks. */ #define DRBD_DISCARD_ZEROES_IF_ALIGNED_DEF 1U
/* Some backends pretend to support WRITE SAME, * but fail such requests when they are actually submitted.
* This is to tell DRBD to not even try. */ #define DRBD_DISABLE_WRITE_SAME_DEF 0U
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.