&lnet_recovery_interval, S_IRUGO|S_IWUSR);
#endif
MODULE_PARM_DESC(lnet_recovery_interval,
- "Interval to recover unhealthy interfaces in seconds");
+ "DEPRECATED - Interval to recover unhealthy interfaces in seconds");
unsigned int lnet_recovery_limit;
module_param(lnet_recovery_limit, uint, 0644);
static int
recovery_interval_set(const char *val, cfs_kernel_param_arg_t *kp)
{
- int rc;
- unsigned *interval = (unsigned *)kp->arg;
- unsigned long value;
-
- rc = kstrtoul(val, 0, &value);
- if (rc) {
- CERROR("Invalid module parameter value for 'lnet_recovery_interval'\n");
- return rc;
- }
-
- if (value < 1) {
- CERROR("lnet_recovery_interval must be at least 1 second\n");
- return -EINVAL;
- }
-
- /*
- * The purpose of locking the api_mutex here is to ensure that
- * the correct value ends up stored properly.
- */
- mutex_lock(&the_lnet.ln_api_mutex);
-
- *interval = value;
-
- mutex_unlock(&the_lnet.ln_api_mutex);
+ CWARN("'lnet_recovery_interval' has been deprecated\n");
return 0;
}
static int
lnet_monitor_thread(void *arg)
{
- time64_t recovery_timeout = 0;
time64_t rsp_timeout = 0;
- int interval;
time64_t now;
wait_for_completion(&the_lnet.ln_started);
rsp_timeout = now + (lnet_transaction_timeout / 2);
}
- if (now >= recovery_timeout) {
- lnet_recover_local_nis();
- lnet_recover_peer_nis();
- recovery_timeout = now + lnet_recovery_interval;
- }
+ lnet_recover_local_nis();
+ lnet_recover_peer_nis();
/*
* TODO do we need to check if we should sleep without
* if we wake up every 1 second? Although, we've seen
* cases where we get a complaint that an idle thread
* is waking up unnecessarily.
- *
- * Take into account the current net_count when you wake
- * up for alive router checking, since we need to check
- * possibly as many networks as we have configured.
*/
- interval = min(lnet_recovery_interval,
- min((unsigned int) alive_router_check_interval /
- lnet_current_net_count,
- lnet_transaction_timeout / 2));
wait_for_completion_interruptible_timeout(
&the_lnet.ln_mt_wait_complete,
- cfs_time_seconds(interval));
+ cfs_time_seconds(1));
/* Must re-init the completion before testing anything,
* including ln_mt_state.
*/