struct l_wait_info lwi;
int rc;
+ atomic_inc(&imp->imp_inval_count);
+
ptlrpc_deactivate_import(imp);
LASSERT(imp->imp_invalid);
obd_import_event(imp->imp_obd, imp, IMP_EVENT_INVALIDATE);
sptlrpc_import_flush_all_ctx(imp);
+
+ atomic_dec(&imp->imp_inval_count);
+ cfs_waitq_signal(&imp->imp_recovery_waitq);
}
/* unset imp_invalid */
cfs_time_current_64())) {
/* If we have never tried this connection since the
the last successful attempt, go with this one */
- if (cfs_time_before_64(conn->oic_last_attempt,
+ if (cfs_time_beforeq_64(conn->oic_last_attempt,
imp->imp_last_success_conn)) {
imp_conn = conn;
break;
if (rc)
GOTO(out, rc);
- rc = sptlrpc_cli_install_rvs_ctx(imp, request->rq_cli_ctx);
- if (rc)
- GOTO(out, rc);
-
LASSERT(imp->imp_conn_current);
msg_flags = lustre_msg_get_op_flags(request->rq_repmsg);
GOTO(out, rc = -ENODEV);
}
exp->exp_connect_flags = ocd->ocd_connect_flags;
+ imp->imp_obd->obd_self_export->exp_connect_flags = ocd->ocd_connect_flags;
class_export_put(exp);
obd_import_event(imp->imp_obd, imp, IMP_EVENT_OCD);
ocd->ocd_brw_size >> CFS_PAGE_SHIFT;
}
+ imp->imp_obd->obd_namespace->ns_connect_flags = ocd->ocd_connect_flags;
+
LASSERT((cli->cl_max_pages_per_rpc <= PTLRPC_MAX_BRW_PAGES) &&
(cli->cl_max_pages_per_rpc > 0));
}