diff --git a/lustre/ldlm/ldlm_lib.c b/lustre/ldlm/ldlm_lib.c
index b39e1c5b9031bc4b93e422b32d20d38bc032a8f6..bc49e4b836e6d9801ef559e26a2ca73889b75ae8 100644
--- a/lustre/ldlm/ldlm_lib.c
+++ b/lustre/ldlm/ldlm_lib.c
@@ -2251,8 +2251,8 @@ int target_handle_dqacq_callback(struct ptlrpc_request *req)
         /* we use the observer */
         if (!obd->obd_observer || !obd->obd_observer->obd_observer) {
                 CERROR("Can't find the observer, it is recovering\n");
-                req->rq_status = -EIO;
-                GOTO(send_reply, rc = -EIO);
+                req->rq_status = -EAGAIN;
+                GOTO(send_reply, rc = -EAGAIN);
         }
 
         master_obd = obd->obd_observer->obd_observer;