Whamcloud - gitweb
LU-15246 ptlrpc: per-device adaptive timeout parameters
When a client is mounting multiple filesystems with different
MGSes setting global parameters at_min, at_max, etc., then the
settings from one filesystem's MGS config will also apply to RPCs
sent for the OSC, MDC, and MGC devices on the other filesystem(s).
Typically the settings of the last filesystem to mount on the client
override the earlier values, and there is no way to separate them.
Moving the parameters to be per-device values allows them to be
set independently for each set of client devices, so that the
client can interact properly with each set of servers. This allows
e.g. different timeouts for local and remote mounts, or for flash
and HDD filesystems that have different load and performance.
Add per-device adaptive timeout parameters that can optionally
replace global parameters of the same name:
at_min -> *.<fsname>*.at_min
at_max -> *.<fsname>*.at_max
at_history -> *.<fsname>*.at_history
ldlm_enqeue_min -> *.<fsname>*.ldlm_enqueue_min
These parameters should always be set with fsname in the device
name, rather than pure wildcard '*' device names, or it will be
be same as the global parameters in the end (settings from one
MGS will apply to devices on other filesystems). That is a bug
in how "lctl set_param -P" works, but will be fixed separately.
Signed-off-by: Lei Feng <flei@whamcloud.com>
Change-Id: I5b04c9aa53a446fb5a78bfaff372b4f236c9eb8a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/45598
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
30 files changed: