DMP maintains a kernel thread that examines the condition of paths to LUNs at a specified interval. This kernel thread is more commonly known as the DMP restore daemon. The type of analysis performed by the restore daemon depends on the path checking policy that it is configured to use.
If DMP statistics gathering is enabled and the VxDMP tunable dmp_probe_idle_lun is to set to 1 (on) the restore daemon will, in addition to any other tasks, perform probing of idle LUNs (LUNS configured to be part of a Volume Manager disk group but which have serviced no I/O requests since the restore daemon last ran).
As probing of idle LUNs is dependent on DMP statistics gathering, disabling statistics gathering also disables idle LUN probing. The default value for statistics gathering is 1 i.e. it is turned on meaning that dmp_probe_idle_lun is also turned on by default.
However, since the dmp_probe_idle_lun depends upon the VxDMP recovery options, the interval for the dmp_probe_idle_lun is the same as that of the interval for recovery options.
To display the status of the DMP path restoration thread we can use the following command:
# vxdmpadm stat restored
The number of daemons running : 1
The interval of daemon: 300
The policy of daemon: check_disabled
Since 5.0 MP3 onwards, the tunables can be viewed by the "vxdmpadm gettune" command and can be changed on the fly by using the "vxdmpadm settune" command.
# vxdmpadm gettune
Tunable Current Value Default Value
------------------------------ ------------- -------------
dmp_failed_io_threshold 57600 57600
dmp_retry_count 5 5
dmp_pathswitch_blks_shift 9 9
dmp_queue_depth 32 32
dmp_cache_open on on
dmp_daemon_count 10 10
dmp_scsi_timeout 30 30
dmp_delayq_interval 15 15
dmp_path_age 300 300
dmp_stat_interval 1 1
dmp_health_time 60 60
dmp_probe_idle_lun on on
dmp_log_level 1 1
dmp_fast_recovery on on
dmp_enable_restore on on
dmp_restore_policy check_disabled check_disabled
dmp_restore_interval 300 300
dmp_restore_cycles 10 10
dmp_monitor_fabric on on
In all versions of Storage Foundation the default interval at which the DMP restore daemons runs (and as such the default interval at which probing idle LUNs takes place) is 300 seconds. Changing this internal depends on the version of Storage Foundation installed on a machine.
In Storage Foundation 5.0MP3 or earlier the DMP restore daemon should be stopped then restarted with a new interval. For example to modify the interval to 400 seconds but to continue using the check_disabled restore policy the following commands would be used:, and then restart it with new attributes.
# vxdmpadm stop restore
# vxdmpadm start restore interval=400 policy=check_disabled
From Storage Foundation 5.0 MP3 onwards the "vxdmpadm settune" command can be used to modify tunable settings on the fly. For example to change the DMP restore daemon interval to 400 seconds the following command could be used:
# vxdmpadm settune dmp_restore_interval=400
To verify changes the vxdmpadm command can be used as follows:
# vxdmpadm gettune dmp_restore_interval
Tunable Current Value Default Value
------------------------------ ------------- -------------
dmp_restore_interval 400 300
# vxdmpadm stat restored
The number of daemons running : 1
The interval of daemon: 400
The policy of daemon: check_disabled
Note that in Storage Foundation 5.0MP3 and later the interval will not be changed until the next time the DMP restore daemon kernel thread is woken up (i.e. a maximum of 300 seconds after the vxdmpadm settune command is run if using default values).
Warning: Decreasing the polling interval below the system default can adversely affect system performance.