Whamcloud - gitweb
LU-9140 nrs: add some debug log for NRS TBF 01/26701/8
authorQian Yingjin <qian@ddn.com>
Tue, 18 Apr 2017 07:51:14 +0000 (15:51 +0800)
committerAndreas Dilger <andreas.dilger@intel.com>
Tue, 9 May 2017 17:20:11 +0000 (17:20 +0000)
This patch adds some useful debug log into NRS TBF.

Test-Parameters: trivial testlist=sanityn,sanityn,sanityn
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I682451df6b1bf4f81c9e46ca272fc14d372cddca
Reviewed-on: https://review.whamcloud.com/26701
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
lustre/ptlrpc/nrs_tbf.c

index 95fa32b..c858b6c 100644 (file)
@@ -348,6 +348,9 @@ nrs_tbf_rule_start(struct ptlrpc_nrs_policy *policy,
                head->th_rule = rule;
        }
 
+       CDEBUG(D_RPCTRACE, "TBF starts rule@%p rate %llu gen %llu\n",
+              rule, rule->tr_rpc_rate, rule->tr_generation);
+
        return 0;
 }
 
@@ -2366,6 +2369,13 @@ static int nrs_tbf_res_get(struct ptlrpc_nrs_policy *policy,
                    cli->tc_rule->tr_flags & NTRS_STOPPING) {
                        struct nrs_tbf_rule *rule;
 
+                       CDEBUG(D_RPCTRACE,
+                              "TBF class@%p rate %llu sequence %d, "
+                              "rule flags %d, head sequence %d\n",
+                              cli, cli->tc_rpc_rate,
+                              cli->tc_rule_sequence,
+                              cli->tc_rule->tr_flags,
+                              atomic_read(&head->th_rule_sequence));
                        rule = nrs_tbf_rule_match(head, cli);
                        if (rule != cli->tc_rule) {
                                nrs_tbf_cli_reset(head, rule, cli);
@@ -2502,11 +2512,12 @@ struct ptlrpc_nrs_request *nrs_tbf_req_get(struct ptlrpc_nrs_policy *policy,
                                                     &cli->tc_node);
                        }
                        CDEBUG(D_RPCTRACE,
-                              "NRS start %s request from %s, "
-                              "seq: %llu\n",
-                              policy->pol_desc->pd_name,
-                              libcfs_id2str(req->rq_peer),
-                              nrq->nr_u.tbf.tr_sequence);
+                              "TBF dequeues: class@%p rate %llu gen %llu "
+                              "token %llu, rule@%p rate %llu gen %llu\n",
+                              cli, cli->tc_rpc_rate,
+                              cli->tc_rule_generation, cli->tc_ntoken,
+                              cli->tc_rule, cli->tc_rule->tr_rpc_rate,
+                              cli->tc_rule->tr_generation);
                } else {
                        ktime_t time;
 
@@ -2572,6 +2583,16 @@ static int nrs_tbf_req_add(struct ptlrpc_nrs_policy *policy,
                list_add_tail(&nrq->nr_u.tbf.tr_list,
                                  &cli->tc_list);
        }
+
+       if (rc == 0)
+               CDEBUG(D_RPCTRACE,
+                      "TBF enqueues: class@%p rate %llu gen %llu "
+                      "token %llu, rule@%p rate %llu gen %llu\n",
+                      cli, cli->tc_rpc_rate,
+                      cli->tc_rule_generation, cli->tc_ntoken,
+                      cli->tc_rule, cli->tc_rule->tr_rpc_rate,
+                      cli->tc_rule->tr_generation);
+
        return rc;
 }