From 214c1266cf7584e0f6d09bc023390ac9f5ff6898 Mon Sep 17 00:00:00 2001 From: Dmitry Zogin Date: Wed, 10 Mar 2010 10:13:45 -0500 Subject: [PATCH] b=20997 Cannot send after transport shutdown Clear imp_vbr_failed flag upon eviction i=robert.read i=alexander.zarochentsev --- lustre/ptlrpc/import.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lustre/ptlrpc/import.c b/lustre/ptlrpc/import.c index f7424e4..b401dad 100644 --- a/lustre/ptlrpc/import.c +++ b/lustre/ptlrpc/import.c @@ -1195,9 +1195,6 @@ static int completed_replay_interpret(struct ptlrpc_request *req, CDEBUG(D_WARNING, "%s: version recovery fails, reconnecting\n", req->rq_import->imp_obd->obd_name); - spin_lock(&req->rq_import->imp_lock); - req->rq_import->imp_vbr_failed = 0; - spin_unlock(&req->rq_import->imp_lock); } else { CDEBUG(D_HA, "%s: LAST_REPLAY message error: %d, " "reconnecting\n", @@ -1291,6 +1288,10 @@ int ptlrpc_import_recovery_state_machine(struct obd_import *imp) CDEBUG(D_HA, "evicted from %s@%s; invalidating\n", obd2cli_tgt(imp->imp_obd), imp->imp_connection->c_remote_uuid.uuid); + /* reset vbr_failed flag upon eviction */ + spin_lock(&imp->imp_lock); + imp->imp_vbr_failed = 0; + spin_unlock(&imp->imp_lock); #ifdef __KERNEL__ /* bug 17802: XXX client_disconnect_export vs connect request -- 1.8.3.1