Whamcloud - gitweb
LU-9859 libcfs: remove wi_data from cfs_workitem
[fs/lustre-release.git] / lnet / selftest / framework.c
index b85dbb5..1ad3c1e 100644 (file)
@@ -23,7 +23,7 @@
  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2012, 2016, Intel Corporation.
+ * Copyright (c) 2012, 2017, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
@@ -51,49 +51,49 @@ MODULE_PARM_DESC(rpc_timeout, "rpc timeout in seconds (64 by default, 0 == never
 
 #define sfw_unpack_id(id)               \
 do {                                    \
-        __swab64s(&(id).nid);           \
-        __swab32s(&(id).pid);           \
+       __swab64s(&(id).nid);           \
+       __swab32s(&(id).pid);           \
 } while (0)
 
 #define sfw_unpack_sid(sid)             \
 do {                                    \
-        __swab64s(&(sid).ses_nid);      \
-        __swab64s(&(sid).ses_stamp);    \
+       __swab64s(&(sid).ses_nid);      \
+       __swab64s(&(sid).ses_stamp);    \
 } while (0)
 
 #define sfw_unpack_fw_counters(fc)        \
 do {                                      \
-        __swab32s(&(fc).running_ms);      \
-        __swab32s(&(fc).active_batches);  \
-        __swab32s(&(fc).zombie_sessions); \
-        __swab32s(&(fc).brw_errors);      \
-        __swab32s(&(fc).ping_errors);     \
+       __swab32s(&(fc).running_ms);      \
+       __swab32s(&(fc).active_batches);  \
+       __swab32s(&(fc).zombie_sessions); \
+       __swab32s(&(fc).brw_errors);      \
+       __swab32s(&(fc).ping_errors);     \
 } while (0)
 
 #define sfw_unpack_rpc_counters(rc)     \
 do {                                    \
-        __swab32s(&(rc).errors);        \
-        __swab32s(&(rc).rpcs_sent);     \
-        __swab32s(&(rc).rpcs_rcvd);     \
-        __swab32s(&(rc).rpcs_dropped);  \
-        __swab32s(&(rc).rpcs_expired);  \
-        __swab64s(&(rc).bulk_get);      \
-        __swab64s(&(rc).bulk_put);      \
+       __swab32s(&(rc).errors);        \
+       __swab32s(&(rc).rpcs_sent);     \
+       __swab32s(&(rc).rpcs_rcvd);     \
+       __swab32s(&(rc).rpcs_dropped);  \
+       __swab32s(&(rc).rpcs_expired);  \
+       __swab64s(&(rc).bulk_get);      \
+       __swab64s(&(rc).bulk_put);      \
 } while (0)
 
 #define sfw_unpack_lnet_counters(lc)    \
 do {                                    \
-        __swab32s(&(lc).errors);        \
-        __swab32s(&(lc).msgs_max);      \
-        __swab32s(&(lc).msgs_alloc);    \
-        __swab32s(&(lc).send_count);    \
-        __swab32s(&(lc).recv_count);    \
-        __swab32s(&(lc).drop_count);    \
-        __swab32s(&(lc).route_count);   \
-        __swab64s(&(lc).send_length);   \
-        __swab64s(&(lc).recv_length);   \
-        __swab64s(&(lc).drop_length);   \
-        __swab64s(&(lc).route_length);  \
+       __swab32s(&(lc).lcc_errors);        \
+       __swab32s(&(lc).lcc_msgs_max);      \
+       __swab32s(&(lc).lcc_msgs_alloc);    \
+       __swab32s(&(lc).lcc_send_count);    \
+       __swab32s(&(lc).lcc_recv_count);    \
+       __swab32s(&(lc).lcc_drop_count);    \
+       __swab32s(&(lc).lcc_route_count);   \
+       __swab64s(&(lc).lcc_send_length);   \
+       __swab64s(&(lc).lcc_recv_length);   \
+       __swab64s(&(lc).lcc_drop_length);   \
+       __swab64s(&(lc).lcc_route_length);  \
 } while (0)
 
 #define sfw_test_active(t)      (atomic_read(&(t)->tsi_nactive) != 0)
@@ -277,14 +277,14 @@ sfw_init_session(struct sfw_session *sn, struct lst_sid sid,
        atomic_set(&sn->sn_ping_errors, 0);
        strlcpy(&sn->sn_name[0], name, sizeof(sn->sn_name));
 
-        sn->sn_timer_active = 0;
-        sn->sn_id           = sid;
-       sn->sn_features     = features;
-        sn->sn_timeout      = session_timeout;
-        sn->sn_started      = cfs_time_current();
+       sn->sn_timer_active = 0;
+       sn->sn_id = sid;
+       sn->sn_features = features;
+       sn->sn_timeout = session_timeout;
+       sn->sn_started = ktime_get();
 
-        timer->stt_data = sn;
-        timer->stt_func = sfw_session_expired;
+       timer->stt_data = sn;
+       timer->stt_func = sfw_session_expired;
        INIT_LIST_HEAD(&timer->stt_list);
 }
 
@@ -390,14 +390,14 @@ sfw_get_stats(struct srpc_stat_reqst *request, struct srpc_stat_reply *reply)
                 return 0;
         }
 
-       lnet_counters_get(&reply->str_lnet);
+       lnet_counters_get_common(&reply->str_lnet);
        srpc_get_counters(&reply->str_rpc);
 
         /* send over the msecs since the session was started
          - with 32 bits to send, this is ~49 days */
-       cnt->running_ms      = jiffies_to_msecs(jiffies - sn->sn_started);
-       cnt->brw_errors      = atomic_read(&sn->sn_brw_errors);
-       cnt->ping_errors     = atomic_read(&sn->sn_ping_errors);
+       cnt->running_ms = ktime_ms_delta(ktime_get(), sn->sn_started);
+       cnt->brw_errors = atomic_read(&sn->sn_brw_errors);
+       cnt->ping_errors = atomic_read(&sn->sn_ping_errors);
        cnt->zombie_sessions = atomic_read(&sfw_data.fw_nzombies);
 
        cnt->active_batches = 0;
@@ -957,7 +957,7 @@ sfw_create_test_rpc(struct sfw_test_unit *tsu, struct lnet_process_id peer,
 static int
 sfw_run_test(struct swi_workitem *wi)
 {
-       struct sfw_test_unit *tsu = wi->swi_workitem.wi_data;
+       struct sfw_test_unit *tsu = container_of(wi, struct sfw_test_unit, tsu_worker);
        struct sfw_test_instance *tsi = tsu->tsu_instance;
        struct srpc_client_rpc *rpc = NULL;
 
@@ -1029,10 +1029,8 @@ sfw_run_batch(struct sfw_batch *tsb)
                        atomic_inc(&tsi->tsi_nactive);
                        tsu->tsu_loop = tsi->tsi_loop;
                        wi = &tsu->tsu_worker;
-                       swi_init_workitem(wi, tsu, sfw_run_test,
-                                         lst_sched_test[\
-                                         lnet_cpt_of_nid(tsu->tsu_dest.nid,
-                                                         NULL)]);
+                       swi_init_workitem(wi, sfw_run_test,
+                                         lst_sched_test[lnet_cpt_of_nid(tsu->tsu_dest.nid, NULL)]);
                        swi_schedule_workitem(wi);
                }
        }
@@ -1605,42 +1603,13 @@ sfw_post_rpc(struct srpc_client_rpc *rpc)
 }
 
 static struct srpc_service sfw_services[] = {
-        {
-                /* sv_id */    SRPC_SERVICE_DEBUG,
-                /* sv_name */  "debug",
-                0
-        },
-        {
-                /* sv_id */    SRPC_SERVICE_QUERY_STAT,
-                /* sv_name */  "query stats",
-                0
-        },
-        {
-                /* sv_id */    SRPC_SERVICE_MAKE_SESSION,
-                /* sv_name */  "make session",
-                0
-        },
-        {
-                /* sv_id */    SRPC_SERVICE_REMOVE_SESSION,
-                /* sv_name */  "remove session",
-                0
-        },
-        {
-                /* sv_id */    SRPC_SERVICE_BATCH,
-                /* sv_name */  "batch service",
-                0
-        },
-        {
-                /* sv_id */    SRPC_SERVICE_TEST,
-                /* sv_name */  "test service",
-                0
-        },
-        {
-                /* sv_id */    0,
-                /* sv_name */  NULL,
-                0
-        }
-};
+       { .sv_id = SRPC_SERVICE_DEBUG,          .sv_name = "debug", },
+       { .sv_id = SRPC_SERVICE_QUERY_STAT,     .sv_name = "query stats", },
+       { .sv_id = SRPC_SERVICE_MAKE_SESSION,   .sv_name = "make session", },
+       { .sv_id = SRPC_SERVICE_REMOVE_SESSION, .sv_name = "remove session", },
+       { .sv_id = SRPC_SERVICE_BATCH,          .sv_name = "batch service", },
+       { .sv_id = SRPC_SERVICE_TEST,           .sv_name = "test service", },
+       { .sv_id = 0, } };
 
 int
 sfw_startup (void)