Whamcloud - gitweb
LU-10419 lfsck: no delay for notify RPC 31/30831/2
authorFan Yong <fan.yong@intel.com>
Thu, 11 Jan 2018 02:36:18 +0000 (10:36 +0800)
committerJohn L. Hammond <jhammond@whamcloud.com>
Wed, 1 Aug 2018 16:34:39 +0000 (16:34 +0000)
It is impossible that current MDT has trouble on the connection
with some other MDT(s) or OST(s). Under such case, the LFSCK on
current MDT should skip related MDT(s) or OST(s) to avoid whole
LFSCK process being blocked by the trouble connection or remote
targets via setting the LFSCK notify RPC as rq_no_delay.

This is back ported from master:
lustre-change: http://review.whamcloud.com/30768
lustre-commit: d8827a8ce44db121f80223dc7189e32f5bf3fd45

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ib35080cedcbe49f4ae8c4b3690a4743d5afe41b1
Reviewed-on: https://review.whamcloud.com/30831
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
lustre/lfsck/lfsck_layout.c
lustre/lfsck/lfsck_lib.c

index 4a37fda..bd90546 100644 (file)
@@ -4526,6 +4526,7 @@ static int lfsck_layout_async_query(const struct lu_env *env,
        llsaa->llsaa_llst = llst;
        req->rq_interpret_reply = lfsck_layout_slave_async_interpret;
        req->rq_allow_intr = 1;
+       req->rq_no_delay = 1;
        ptlrpc_set_add_req(set, req);
 
        RETURN(0);
@@ -4555,6 +4556,7 @@ static int lfsck_layout_async_notify(const struct lu_env *env,
        *tmp = *lr;
        ptlrpc_request_set_replen(req);
        req->rq_allow_intr = 1;
+       req->rq_no_delay = 1;
        ptlrpc_set_add_req(set, req);
 
        RETURN(0);
index 29f88a7..70c6b6a 100644 (file)
@@ -2420,6 +2420,7 @@ int lfsck_async_request(const struct lu_env *env, struct obd_export *exp,
                lfsck_component_get(laia->laia_com);
        req->rq_interpret_reply = interpreter;
        req->rq_allow_intr = 1;
+       req->rq_no_delay = 1;
        ptlrpc_set_add_req(set, req);
 
        return 0;