diff --git a/kmod/src/options.c b/kmod/src/options.c index b7565d76..1ff6e55f 100644 --- a/kmod/src/options.c +++ b/kmod/src/options.c @@ -136,7 +136,7 @@ static void free_options(struct scoutfs_mount_options *opts) #define MIN_DATA_PREALLOC_BLOCKS 1ULL #define MAX_DATA_PREALLOC_BLOCKS ((unsigned long long)SCOUTFS_BLOCK_SM_MAX) -#define DEFAULT_TCP_KEEPALIVE_TIMEOUT_MS (60 * MSEC_PER_SEC) +#define DEFAULT_TCP_KEEPALIVE_TIMEOUT_MS (24 * MSEC_PER_SEC) static void init_default_options(struct scoutfs_mount_options *opts) { diff --git a/utils/man/scoutfs.5 b/utils/man/scoutfs.5 index d3012419..7efd8006 100644 --- a/utils/man/scoutfs.5 +++ b/utils/man/scoutfs.5 @@ -161,7 +161,7 @@ connection will wait for active TCP packets, before deciding that the connection is dead. This setting is per-mount and only changes the behavior of that mount. .sp -The default value of this setting is 60000msec (60s). Any precision +The default value of this setting is 24000msec (24s). Any precision beyond a whole second is likely unrealistic due to the nature of TCP keepalive mechanisms in the Linux kernel. Valid values are any value higher than 3000 (3s). @@ -170,7 +170,8 @@ The TCP keepalive mechanism is complex and observing a lost connection quickly is important to maintain cluster stability. If the local network suffers from intermittent outages this option may provide some respite to overcome these outages without the cluster becoming -desynchronized. +desynchronized. Values above 30s are discouraged due to the negative +effect on recovery from fencing. .SH VOLUME OPTIONS Volume options are persistent options which are stored in the super block in the metadata device and which apply to all mounts of the volume.