spin_unlock(&imp->imp_lock); \
} while(0)
+void ptlrpc_import_enter_resend(struct obd_import *imp)
+{
+ IMPORT_SET_STATE(imp, LUSTRE_IMP_RECOVER);
+}
+EXPORT_SYMBOL(ptlrpc_import_enter_resend);
+
static int ptlrpc_connect_interpret(const struct lu_env *env,
struct ptlrpc_request *request,
lustre_msg_add_op_flags(request->rq_reqmsg,
MSG_CONNECT_TRANSNO);
- DEBUG_REQ(D_RPCTRACE, request, "(re)connect request (timeout %d)",
- request->rq_timeout);
- ptlrpcd_add_req(request, PDL_POLICY_ROUND, -1);
- rc = 0;
+ DEBUG_REQ(D_RPCTRACE, request, "(re)connect request (timeout %d)",
+ request->rq_timeout);
+ ptlrpcd_add_req(request);
+ rc = 0;
out:
- if (rc != 0) {
- IMPORT_SET_STATE(imp, LUSTRE_IMP_DISCON);
- }
+ if (rc != 0)
+ IMPORT_SET_STATE(imp, LUSTRE_IMP_DISCON);
- RETURN(rc);
+ RETURN(rc);
}
EXPORT_SYMBOL(ptlrpc_connect_import);
/* The net statistics after (re-)connect is not valid anymore,
* because may reflect other routing, etc. */
- at_init(&imp->imp_at.iat_net_latency, 0, 0);
+ at_reinit(&imp->imp_at.iat_net_latency, 0, 0);
ptlrpc_at_adj_net_latency(request,
lustre_msg_get_service_time(request->rq_repmsg));
req->rq_timeout *= 3;
req->rq_interpret_reply = completed_replay_interpret;
- ptlrpcd_add_req(req, PDL_POLICY_ROUND, -1);
+ ptlrpcd_add_req(req);
RETURN(0);
}
}
if (imp->imp_state == LUSTRE_IMP_RECOVER) {
- CDEBUG(D_HA, "reconnected to %s@%s\n",
- obd2cli_tgt(imp->imp_obd),
- imp->imp_connection->c_remote_uuid.uuid);
+ struct ptlrpc_connection *conn = imp->imp_connection;
rc = ptlrpc_resend(imp);
if (rc)
IMPORT_SET_STATE(imp, LUSTRE_IMP_FULL);
ptlrpc_activate_import(imp);
- deuuidify(obd2cli_tgt(imp->imp_obd), NULL,
- &target_start, &target_len);
- LCONSOLE_INFO("%s: Connection restored to %.*s (at %s)\n",
- imp->imp_obd->obd_name,
- target_len, target_start,
- libcfs_nid2str(imp->imp_connection->c_peer.nid));
+ LCONSOLE_INFO("%s: Connection restored to %s (at %s)\n",
+ imp->imp_obd->obd_name,
+ obd_uuid2str(&conn->c_remote_uuid),
+ libcfs_nid2str(imp->imp_connection->c_peer.nid));
}
if (imp->imp_state == LUSTRE_IMP_FULL) {