Whamcloud - gitweb
LU-9859 libcfs: remove wi_data from cfs_workitem
[fs/lustre-release.git] / lnet / selftest / framework.c
index 032d95e..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)
@@ -111,21 +111,21 @@ static struct smoketest_framework {
        /* serialise */
        spinlock_t              fw_lock;
        /* _the_ session */
-       sfw_session_t           *fw_session;
+       struct sfw_session      *fw_session;
        /* shutdown in progress */
        int                     fw_shuttingdown;
        /* running RPC */
-       srpc_server_rpc_t       *fw_active_srpc;
+       struct srpc_server_rpc  *fw_active_srpc;
 } sfw_data;
 
 /* forward ref's */
-int sfw_stop_batch (sfw_batch_t *tsb, int force);
-void sfw_destroy_session (sfw_session_t *sn);
+static int sfw_stop_batch(struct sfw_batch *tsb, int force);
+static void sfw_destroy_session(struct sfw_session *sn);
 
-static inline sfw_test_case_t *
+static inline struct sfw_test_case *
 sfw_find_test_case(int id)
 {
-       sfw_test_case_t *tsc;
+       struct sfw_test_case *tsc;
 
        LASSERT(id <= SRPC_SERVICE_MAX_ID);
        LASSERT(id > SRPC_FRAMEWORK_SERVICE_MAX_ID);
@@ -139,9 +139,10 @@ sfw_find_test_case(int id)
 }
 
 static int
-sfw_register_test (srpc_service_t *service, sfw_test_client_ops_t *cliops)
+sfw_register_test(struct srpc_service *service,
+                 struct sfw_test_client_ops *cliops)
 {
-        sfw_test_case_t *tsc;
+       struct sfw_test_case *tsc;
 
         if (sfw_find_test_case(service->sv_id) != NULL) {
                 CERROR ("Failed to register test %s (%d)\n",
@@ -149,7 +150,7 @@ sfw_register_test (srpc_service_t *service, sfw_test_client_ops_t *cliops)
                 return -EEXIST;
         }
 
-        LIBCFS_ALLOC(tsc, sizeof(sfw_test_case_t));
+       LIBCFS_ALLOC(tsc, sizeof(*tsc));
         if (tsc == NULL)
                 return -ENOMEM;
 
@@ -163,8 +164,8 @@ sfw_register_test (srpc_service_t *service, sfw_test_client_ops_t *cliops)
 static void
 sfw_add_session_timer (void)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
-        stt_timer_t   *timer = &sn->sn_timer;
+       struct sfw_session *sn = sfw_data.fw_session;
+       struct stt_timer *timer = &sn->sn_timer;
 
         LASSERT (!sfw_data.fw_shuttingdown);
 
@@ -182,7 +183,7 @@ sfw_add_session_timer (void)
 static int
 sfw_del_session_timer (void)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
 
         if (sn == NULL || !sn->sn_timer_active)
                 return 0;
@@ -202,10 +203,10 @@ static void
 sfw_deactivate_session (void)
 __must_hold(&sfw_data.fw_lock)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
         int            nactive = 0;
-        sfw_batch_t   *tsb;
-        sfw_test_case_t *tsc;
+       struct sfw_batch *tsb;
+       struct sfw_test_case *tsc;
 
         if (sn == NULL) return;
 
@@ -245,7 +246,7 @@ __must_hold(&sfw_data.fw_lock)
 static void
 sfw_session_expired (void *data)
 {
-       sfw_session_t *sn = data;
+       struct sfw_session *sn = data;
 
        spin_lock(&sfw_data.fw_lock);
 
@@ -263,12 +264,12 @@ sfw_session_expired (void *data)
 }
 
 static inline void
-sfw_init_session(sfw_session_t *sn, struct lst_sid sid,
+sfw_init_session(struct sfw_session *sn, struct lst_sid sid,
                 unsigned features, const char *name)
 {
-        stt_timer_t *timer = &sn->sn_timer;
+       struct stt_timer *timer = &sn->sn_timer;
 
-        memset(sn, 0, sizeof(sfw_session_t));
+       memset(sn, 0, sizeof(struct sfw_session));
        INIT_LIST_HEAD(&sn->sn_list);
        INIT_LIST_HEAD(&sn->sn_batches);
        atomic_set(&sn->sn_refcount, 1);        /* +1 for caller */
@@ -276,14 +277,14 @@ sfw_init_session(sfw_session_t *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);
 }
 
@@ -307,7 +308,7 @@ sfw_server_rpc_done(struct srpc_server_rpc *rpc)
 }
 
 static void
-sfw_client_rpc_fini (srpc_client_rpc_t *rpc)
+sfw_client_rpc_fini(struct srpc_client_rpc *rpc)
 {
        LASSERT(rpc->crpc_bulk.bk_niov == 0);
        LASSERT(list_empty(&rpc->crpc_list));
@@ -328,11 +329,11 @@ sfw_client_rpc_fini (srpc_client_rpc_t *rpc)
        spin_unlock(&sfw_data.fw_lock);
 }
 
-static sfw_batch_t *
+static struct sfw_batch *
 sfw_find_batch(struct lst_bid bid)
 {
-       sfw_session_t *sn = sfw_data.fw_session;
-       sfw_batch_t   *bat;
+       struct sfw_session *sn = sfw_data.fw_session;
+       struct sfw_batch *bat;
 
        LASSERT(sn != NULL);
 
@@ -344,11 +345,11 @@ sfw_find_batch(struct lst_bid bid)
        return NULL;
 }
 
-static sfw_batch_t *
+static struct sfw_batch *
 sfw_bid2batch(struct lst_bid bid)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
-        sfw_batch_t   *bat;
+       struct sfw_session *sn = sfw_data.fw_session;
+       struct sfw_batch *bat;
 
         LASSERT (sn != NULL);
 
@@ -356,7 +357,7 @@ sfw_bid2batch(struct lst_bid bid)
         if (bat != NULL)
                 return bat;
 
-        LIBCFS_ALLOC(bat, sizeof(sfw_batch_t));
+       LIBCFS_ALLOC(bat, sizeof(*bat));
        if (bat == NULL)
                 return NULL;
 
@@ -371,11 +372,11 @@ sfw_bid2batch(struct lst_bid bid)
 }
 
 static int
-sfw_get_stats (srpc_stat_reqst_t *request, srpc_stat_reply_t *reply)
+sfw_get_stats(struct srpc_stat_reqst *request, struct srpc_stat_reply *reply)
 {
-        sfw_session_t  *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
        struct sfw_counters *cnt = &reply->str_fw;
-        sfw_batch_t    *bat;
+       struct sfw_batch *bat;
 
         reply->str_sid = (sn == NULL) ? LST_INVALID_SID : sn->sn_id;
 
@@ -389,14 +390,14 @@ sfw_get_stats (srpc_stat_reqst_t *request, srpc_stat_reply_t *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;
@@ -410,12 +411,12 @@ sfw_get_stats (srpc_stat_reqst_t *request, srpc_stat_reply_t *reply)
 }
 
 int
-sfw_make_session(srpc_mksn_reqst_t *request, srpc_mksn_reply_t *reply)
+sfw_make_session(struct srpc_mksn_reqst *request, struct srpc_mksn_reply *reply)
 {
-       sfw_session_t *sn = sfw_data.fw_session;
-       srpc_msg_t    *msg = container_of(request, srpc_msg_t,
-                                         msg_body.mksn_reqst);
-       int            cplen = 0;
+       struct sfw_session *sn = sfw_data.fw_session;
+       struct srpc_msg *msg = container_of(request, struct srpc_msg,
+                                           msg_body.mksn_reqst);
+       int cplen = 0;
 
         if (request->mksn_sid.ses_nid == LNET_NID_ANY) {
                 reply->mksn_sid = (sn == NULL) ? LST_INVALID_SID : sn->sn_id;
@@ -445,7 +446,7 @@ sfw_make_session(srpc_mksn_reqst_t *request, srpc_mksn_reply_t *reply)
 
        /* reject the request if it requires unknown features
         * NB: old version will always accept all features because it's not
-        * aware of srpc_msg_t::msg_ses_feats, it's a defect but it's also
+        * aware of struct srpc_msg::msg_ses_feats, it's a defect but it's also
         * harmless because it will return zero feature to console, and it's
         * console's responsibility to make sure all nodes in a session have
         * same feature mask. */
@@ -455,7 +456,7 @@ sfw_make_session(srpc_mksn_reqst_t *request, srpc_mksn_reply_t *reply)
        }
 
        /* brand new or create by force */
-       LIBCFS_ALLOC(sn, sizeof(sfw_session_t));
+       LIBCFS_ALLOC(sn, sizeof(*sn));
        if (sn == NULL) {
                CERROR("dropping RPC mksn under memory pressure\n");
                return -ENOMEM;
@@ -479,9 +480,10 @@ sfw_make_session(srpc_mksn_reqst_t *request, srpc_mksn_reply_t *reply)
 }
 
 static int
-sfw_remove_session (srpc_rmsn_reqst_t *request, srpc_rmsn_reply_t *reply)
+sfw_remove_session(struct srpc_rmsn_reqst *request,
+                  struct srpc_rmsn_reply *reply)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
 
         reply->rmsn_sid = (sn == NULL) ? LST_INVALID_SID : sn->sn_id;
 
@@ -511,9 +513,10 @@ sfw_remove_session (srpc_rmsn_reqst_t *request, srpc_rmsn_reply_t *reply)
 }
 
 static int
-sfw_debug_session (srpc_debug_reqst_t *request, srpc_debug_reply_t *reply)
+sfw_debug_session(struct srpc_debug_reqst *request,
+                 struct srpc_debug_reply *reply)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
 
         if (sn == NULL) {
                 reply->dbg_status = ESRCH;
@@ -532,10 +535,10 @@ sfw_debug_session (srpc_debug_reqst_t *request, srpc_debug_reply_t *reply)
 }
 
 static void
-sfw_test_rpc_fini (srpc_client_rpc_t *rpc)
+sfw_test_rpc_fini(struct srpc_client_rpc *rpc)
 {
-       sfw_test_unit_t     *tsu = rpc->crpc_priv;
-       sfw_test_instance_t *tsi = tsu->tsu_instance;
+       struct sfw_test_unit *tsu = rpc->crpc_priv;
+       struct sfw_test_instance *tsi = tsu->tsu_instance;
 
        /* Called with hold of tsi->tsi_lock */
        LASSERT(list_empty(&rpc->crpc_list));
@@ -543,7 +546,7 @@ sfw_test_rpc_fini (srpc_client_rpc_t *rpc)
 }
 
 static inline int
-sfw_test_buffers(sfw_test_instance_t *tsi)
+sfw_test_buffers(struct sfw_test_instance *tsi)
 {
        struct sfw_test_case    *tsc;
        struct srpc_service     *svc;
@@ -617,10 +620,10 @@ sfw_unload_test(struct sfw_test_instance *tsi)
 }
 
 static void
-sfw_destroy_test_instance (sfw_test_instance_t *tsi)
+sfw_destroy_test_instance(struct sfw_test_instance *tsi)
 {
-        srpc_client_rpc_t *rpc;
-        sfw_test_unit_t   *tsu;
+       struct srpc_client_rpc *rpc;
+       struct sfw_test_unit *tsu;
 
         if (!tsi->tsi_is_client) goto clean;
 
@@ -632,14 +635,14 @@ sfw_destroy_test_instance (sfw_test_instance_t *tsi)
 
        while (!list_empty(&tsi->tsi_units)) {
                tsu = list_entry(tsi->tsi_units.next,
-                                sfw_test_unit_t, tsu_list);
+                                struct sfw_test_unit, tsu_list);
                list_del(&tsu->tsu_list);
                LIBCFS_FREE(tsu, sizeof(*tsu));
        }
 
        while (!list_empty(&tsi->tsi_free_rpcs)) {
                rpc = list_entry(tsi->tsi_free_rpcs.next,
-                                srpc_client_rpc_t, crpc_list);
+                                struct srpc_client_rpc, crpc_list);
                list_del(&rpc->crpc_list);
                LIBCFS_FREE(rpc, srpc_client_rpc_size(rpc));
        }
@@ -651,35 +654,35 @@ clean:
 }
 
 static void
-sfw_destroy_batch (sfw_batch_t *tsb)
+sfw_destroy_batch(struct sfw_batch *tsb)
 {
-       sfw_test_instance_t *tsi;
+       struct sfw_test_instance *tsi;
 
        LASSERT(!sfw_batch_active(tsb));
        LASSERT(list_empty(&tsb->bat_list));
 
        while (!list_empty(&tsb->bat_tests)) {
                tsi = list_entry(tsb->bat_tests.next,
-                                sfw_test_instance_t, tsi_list);
+                                struct sfw_test_instance, tsi_list);
                list_del_init(&tsi->tsi_list);
                sfw_destroy_test_instance(tsi);
        }
 
-       LIBCFS_FREE(tsb, sizeof(sfw_batch_t));
+       LIBCFS_FREE(tsb, sizeof(*tsb));
        return;
 }
 
-void
-sfw_destroy_session (sfw_session_t *sn)
+static void
+sfw_destroy_session(struct sfw_session *sn)
 {
-       sfw_batch_t *batch;
+       struct sfw_batch *batch;
 
        LASSERT(list_empty(&sn->sn_list));
        LASSERT(sn != sfw_data.fw_session);
 
        while (!list_empty(&sn->sn_batches)) {
                batch = list_entry(sn->sn_batches.next,
-                                  sfw_batch_t, bat_list);
+                                  struct sfw_batch, bat_list);
                list_del_init(&batch->bat_list);
                sfw_destroy_batch(batch);
        }
@@ -690,9 +693,9 @@ sfw_destroy_session (sfw_session_t *sn)
 }
 
 static void
-sfw_unpack_addtest_req(srpc_msg_t *msg)
+sfw_unpack_addtest_req(struct srpc_msg *msg)
 {
-        srpc_test_reqst_t *req = &msg->msg_body.tes_reqst;
+       struct srpc_test_reqst *req = &msg->msg_body.tes_reqst;
 
         LASSERT (msg->msg_type == SRPC_MSG_TEST_REQST);
         LASSERT (req->tsr_is_client);
@@ -704,14 +707,14 @@ sfw_unpack_addtest_req(srpc_msg_t *msg)
 
        if (req->tsr_service == SRPC_SERVICE_BRW) {
                if ((msg->msg_ses_feats & LST_FEAT_BULK_LEN) == 0) {
-                       test_bulk_req_t *bulk = &req->tsr_u.bulk_v0;
+                       struct test_bulk_req *bulk = &req->tsr_u.bulk_v0;
 
                        __swab32s(&bulk->blk_opc);
                        __swab32s(&bulk->blk_npg);
                        __swab32s(&bulk->blk_flags);
 
                } else {
-                       test_bulk_req_v1_t *bulk = &req->tsr_u.bulk_v1;
+                       struct test_bulk_req_v1 *bulk = &req->tsr_u.bulk_v1;
 
                        __swab16s(&bulk->blk_opc);
                        __swab16s(&bulk->blk_flags);
@@ -723,7 +726,7 @@ sfw_unpack_addtest_req(srpc_msg_t *msg)
        }
 
         if (req->tsr_service == SRPC_SERVICE_PING) {
-                test_ping_req_t *ping = &req->tsr_u.ping;
+               struct test_ping_req *ping = &req->tsr_u.ping;
 
                 __swab32s(&ping->png_size);
                 __swab32s(&ping->png_flags);
@@ -735,16 +738,16 @@ sfw_unpack_addtest_req(srpc_msg_t *msg)
 }
 
 static int
-sfw_add_test_instance (sfw_batch_t *tsb, srpc_server_rpc_t *rpc)
+sfw_add_test_instance(struct sfw_batch *tsb, struct srpc_server_rpc *rpc)
 {
-        srpc_msg_t          *msg = &rpc->srpc_reqstbuf->buf_msg;
-        srpc_test_reqst_t   *req = &msg->msg_body.tes_reqst;
-        srpc_bulk_t         *bk = rpc->srpc_bulk;
-        int                  ndest = req->tsr_ndest;
-        sfw_test_unit_t     *tsu;
-        sfw_test_instance_t *tsi;
-        int                  i;
-        int                  rc;
+       struct srpc_msg *msg = &rpc->srpc_reqstbuf->buf_msg;
+       struct srpc_test_reqst *req = &msg->msg_body.tes_reqst;
+       struct srpc_bulk *bk = rpc->srpc_bulk;
+       int ndest = req->tsr_ndest;
+       struct sfw_test_unit *tsu;
+       struct sfw_test_instance *tsi;
+       int i;
+       int rc;
 
         LIBCFS_ALLOC(tsi, sizeof(*tsi));
         if (tsi == NULL) {
@@ -801,7 +804,7 @@ sfw_add_test_instance (sfw_batch_t *tsb, srpc_server_rpc_t *rpc)
                         sfw_unpack_id(id);
 
                 for (j = 0; j < tsi->tsi_concur; j++) {
-                        LIBCFS_ALLOC(tsu, sizeof(sfw_test_unit_t));
+                       LIBCFS_ALLOC(tsu, sizeof(*tsu));
                         if (tsu == NULL) {
                                 rc = -ENOMEM;
                                 CERROR ("Can't allocate tsu for %d\n",
@@ -830,11 +833,11 @@ error:
 }
 
 static void
-sfw_test_unit_done (sfw_test_unit_t *tsu)
+sfw_test_unit_done(struct sfw_test_unit *tsu)
 {
-        sfw_test_instance_t *tsi = tsu->tsu_instance;
-        sfw_batch_t         *tsb = tsi->tsi_batch;
-        sfw_session_t       *sn = tsb->bat_session;
+       struct sfw_test_instance *tsi = tsu->tsu_instance;
+       struct sfw_batch *tsb = tsi->tsi_batch;
+       struct sfw_session *sn = tsb->bat_session;
 
         LASSERT (sfw_test_active(tsi));
 
@@ -873,10 +876,10 @@ sfw_test_unit_done (sfw_test_unit_t *tsu)
 }
 
 static void
-sfw_test_rpc_done (srpc_client_rpc_t *rpc)
+sfw_test_rpc_done(struct srpc_client_rpc *rpc)
 {
-        sfw_test_unit_t     *tsu = rpc->crpc_priv;
-        sfw_test_instance_t *tsi = tsu->tsu_instance;
+       struct sfw_test_unit *tsu = rpc->crpc_priv;
+       struct sfw_test_instance *tsi = tsu->tsu_instance;
         int                  done = 0;
 
         tsi->tsi_ops->tso_done_rpc(tsu, rpc);
@@ -909,12 +912,12 @@ sfw_test_rpc_done (srpc_client_rpc_t *rpc)
 }
 
 int
-sfw_create_test_rpc(sfw_test_unit_t *tsu, struct lnet_process_id peer,
+sfw_create_test_rpc(struct sfw_test_unit *tsu, struct lnet_process_id peer,
                    unsigned features, int nblk, int blklen,
-                   srpc_client_rpc_t **rpcpp)
+                   struct srpc_client_rpc **rpcpp)
 {
-       srpc_client_rpc_t   *rpc = NULL;
-       sfw_test_instance_t *tsi = tsu->tsu_instance;
+       struct srpc_client_rpc *rpc = NULL;
+       struct sfw_test_instance *tsi = tsu->tsu_instance;
 
        spin_lock(&tsi->tsi_lock);
 
@@ -923,7 +926,7 @@ sfw_create_test_rpc(sfw_test_unit_t *tsu, struct lnet_process_id peer,
        if (!list_empty(&tsi->tsi_free_rpcs)) {
                /* pick request from buffer */
                rpc = list_entry(tsi->tsi_free_rpcs.next,
-                                srpc_client_rpc_t, crpc_list);
+                                struct srpc_client_rpc, crpc_list);
                LASSERT(nblk == rpc->crpc_bulk.bk_niov);
                list_del_init(&rpc->crpc_list);
        }
@@ -952,11 +955,11 @@ sfw_create_test_rpc(sfw_test_unit_t *tsu, struct lnet_process_id peer,
 }
 
 static int
-sfw_run_test (swi_workitem_t *wi)
+sfw_run_test(struct swi_workitem *wi)
 {
-        sfw_test_unit_t     *tsu = wi->swi_workitem.wi_data;
-        sfw_test_instance_t *tsi = tsu->tsu_instance;
-        srpc_client_rpc_t   *rpc = NULL;
+       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;
 
         LASSERT (wi == &tsu->tsu_worker);
 
@@ -1001,11 +1004,11 @@ test_done:
 }
 
 static int
-sfw_run_batch (sfw_batch_t *tsb)
+sfw_run_batch(struct sfw_batch *tsb)
 {
-        swi_workitem_t      *wi;
-        sfw_test_unit_t     *tsu;
-        sfw_test_instance_t *tsi;
+       struct swi_workitem *wi;
+       struct sfw_test_unit *tsu;
+       struct sfw_test_instance *tsi;
 
         if (sfw_batch_active(tsb)) {
                CDEBUG(D_NET, "Batch already active: %llu (%d)\n",
@@ -1026,10 +1029,8 @@ sfw_run_batch (sfw_batch_t *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);
                }
        }
@@ -1037,11 +1038,11 @@ sfw_run_batch (sfw_batch_t *tsb)
        return 0;
 }
 
-int
-sfw_stop_batch (sfw_batch_t *tsb, int force)
+static int
+sfw_stop_batch(struct sfw_batch *tsb, int force)
 {
-        sfw_test_instance_t *tsi;
-        srpc_client_rpc_t   *rpc;
+       struct sfw_test_instance *tsi;
+       struct srpc_client_rpc *rpc;
 
         if (!sfw_batch_active(tsb)) {
                CDEBUG(D_NET, "Batch %llu inactive\n", tsb->bat_id.bat_id);
@@ -1080,9 +1081,10 @@ sfw_stop_batch (sfw_batch_t *tsb, int force)
 }
 
 static int
-sfw_query_batch (sfw_batch_t *tsb, int testidx, srpc_batch_reply_t *reply)
+sfw_query_batch(struct sfw_batch *tsb, int testidx,
+               struct srpc_batch_reply *reply)
 {
-        sfw_test_instance_t *tsi;
+       struct sfw_test_instance *tsi;
 
         if (testidx < 0)
                 return -EINVAL;
@@ -1104,7 +1106,7 @@ sfw_query_batch (sfw_batch_t *tsb, int testidx, srpc_batch_reply_t *reply)
 }
 
 void
-sfw_free_pages (srpc_server_rpc_t *rpc)
+sfw_free_pages(struct srpc_server_rpc *rpc)
 {
         srpc_free_bulk(rpc->srpc_bulk);
         rpc->srpc_bulk = NULL;
@@ -1125,13 +1127,13 @@ sfw_alloc_pages(struct srpc_server_rpc *rpc, int cpt, int npages, int len,
 }
 
 static int
-sfw_add_test (srpc_server_rpc_t *rpc)
+sfw_add_test(struct srpc_server_rpc *rpc)
 {
-        sfw_session_t     *sn = sfw_data.fw_session;
-        srpc_test_reply_t *reply = &rpc->srpc_replymsg.msg_body.tes_reply;
-        srpc_test_reqst_t *request;
-        int                rc;
-        sfw_batch_t       *bat;
+       struct sfw_session *sn = sfw_data.fw_session;
+       struct srpc_test_reply *reply = &rpc->srpc_replymsg.msg_body.tes_reply;
+       struct srpc_test_reqst *request;
+       int rc;
+       struct sfw_batch *bat;
 
         request = &rpc->srpc_reqstbuf->buf_msg.msg_body.tes_reqst;
         reply->tsr_sid = (sn == NULL) ? LST_INVALID_SID : sn->sn_id;
@@ -1195,11 +1197,12 @@ sfw_add_test (srpc_server_rpc_t *rpc)
 }
 
 static int
-sfw_control_batch (srpc_batch_reqst_t *request, srpc_batch_reply_t *reply)
+sfw_control_batch(struct srpc_batch_reqst *request,
+                 struct srpc_batch_reply *reply)
 {
-        sfw_session_t *sn = sfw_data.fw_session;
+       struct sfw_session *sn = sfw_data.fw_session;
         int            rc = 0;
-        sfw_batch_t   *bat;
+       struct sfw_batch *bat;
 
         reply->bar_sid = (sn == NULL) ? LST_INVALID_SID : sn->sn_id;
 
@@ -1239,8 +1242,8 @@ static int
 sfw_handle_server_rpc(struct srpc_server_rpc *rpc)
 {
        struct srpc_service     *sv = rpc->srpc_scd->scd_svc;
-       srpc_msg_t     *reply   = &rpc->srpc_replymsg;
-       srpc_msg_t     *request = &rpc->srpc_reqstbuf->buf_msg;
+       struct srpc_msg     *reply      = &rpc->srpc_replymsg;
+       struct srpc_msg     *request    = &rpc->srpc_reqstbuf->buf_msg;
        unsigned        features = LST_FEATS_MASK;
        int             rc = 0;
 
@@ -1273,7 +1276,7 @@ sfw_handle_server_rpc(struct srpc_server_rpc *rpc)
 
        if (sv->sv_id != SRPC_SERVICE_MAKE_SESSION &&
            sv->sv_id != SRPC_SERVICE_DEBUG) {
-               sfw_session_t *sn = sfw_data.fw_session;
+               struct sfw_session *sn = sfw_data.fw_session;
 
                if (sn != NULL &&
                    sn->sn_features != request->msg_ses_feats) {
@@ -1389,12 +1392,12 @@ sfw_bulk_ready(struct srpc_server_rpc *rpc, int status)
        return rc;
 }
 
-srpc_client_rpc_t *
+struct srpc_client_rpc *
 sfw_create_rpc(struct lnet_process_id peer, int service,
               unsigned features, int nbulkiov, int bulklen,
-              void (*done)(srpc_client_rpc_t *), void *priv)
+              void (*done)(struct srpc_client_rpc *), void *priv)
 {
-       srpc_client_rpc_t *rpc = NULL;
+       struct srpc_client_rpc *rpc = NULL;
 
        spin_lock(&sfw_data.fw_lock);
 
@@ -1403,7 +1406,7 @@ sfw_create_rpc(struct lnet_process_id peer, int service,
 
        if (nbulkiov == 0 && !list_empty(&sfw_data.fw_zombie_rpcs)) {
                rpc = list_entry(sfw_data.fw_zombie_rpcs.next,
-                                     srpc_client_rpc_t, crpc_list);
+                                    struct srpc_client_rpc, crpc_list);
                list_del(&rpc->crpc_list);
 
                 srpc_init_client_rpc(rpc, peer, service, 0, 0,
@@ -1427,7 +1430,7 @@ sfw_create_rpc(struct lnet_process_id peer, int service,
 }
 
 void
-sfw_unpack_message (srpc_msg_t *msg)
+sfw_unpack_message(struct srpc_msg *msg)
 {
         if (msg->msg_magic == SRPC_MSG_MAGIC)
                 return; /* no flipping needed */
@@ -1436,7 +1439,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         LASSERT (msg->msg_magic == __swab32(SRPC_MSG_MAGIC));
 
         if (msg->msg_type == SRPC_MSG_STAT_REQST) {
-                srpc_stat_reqst_t *req = &msg->msg_body.stat_reqst;
+               struct srpc_stat_reqst *req = &msg->msg_body.stat_reqst;
 
                 __swab32s(&req->str_type);
                 __swab64s(&req->str_rpyid);
@@ -1445,7 +1448,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_STAT_REPLY) {
-                srpc_stat_reply_t *rep = &msg->msg_body.stat_reply;
+               struct srpc_stat_reply *rep = &msg->msg_body.stat_reply;
 
                 __swab32s(&rep->str_status);
                 sfw_unpack_sid(rep->str_sid);
@@ -1456,7 +1459,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_MKSN_REQST) {
-                srpc_mksn_reqst_t *req = &msg->msg_body.mksn_reqst;
+               struct srpc_mksn_reqst *req = &msg->msg_body.mksn_reqst;
 
                 __swab64s(&req->mksn_rpyid);
                 __swab32s(&req->mksn_force);
@@ -1465,7 +1468,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_MKSN_REPLY) {
-                srpc_mksn_reply_t *rep = &msg->msg_body.mksn_reply;
+               struct srpc_mksn_reply *rep = &msg->msg_body.mksn_reply;
 
                 __swab32s(&rep->mksn_status);
                 __swab32s(&rep->mksn_timeout);
@@ -1474,7 +1477,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_RMSN_REQST) {
-                srpc_rmsn_reqst_t *req = &msg->msg_body.rmsn_reqst;
+               struct srpc_rmsn_reqst *req = &msg->msg_body.rmsn_reqst;
 
                 __swab64s(&req->rmsn_rpyid);
                 sfw_unpack_sid(req->rmsn_sid);
@@ -1482,7 +1485,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_RMSN_REPLY) {
-                srpc_rmsn_reply_t *rep = &msg->msg_body.rmsn_reply;
+               struct srpc_rmsn_reply *rep = &msg->msg_body.rmsn_reply;
 
                 __swab32s(&rep->rmsn_status);
                 sfw_unpack_sid(rep->rmsn_sid);
@@ -1490,7 +1493,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_DEBUG_REQST) {
-                srpc_debug_reqst_t *req = &msg->msg_body.dbg_reqst;
+               struct srpc_debug_reqst *req = &msg->msg_body.dbg_reqst;
 
                 __swab64s(&req->dbg_rpyid);
                 __swab32s(&req->dbg_flags);
@@ -1499,7 +1502,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_DEBUG_REPLY) {
-                srpc_debug_reply_t *rep = &msg->msg_body.dbg_reply;
+               struct srpc_debug_reply *rep = &msg->msg_body.dbg_reply;
 
                 __swab32s(&rep->dbg_nbatch);
                 __swab32s(&rep->dbg_timeout);
@@ -1508,7 +1511,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_BATCH_REQST) {
-                srpc_batch_reqst_t *req = &msg->msg_body.bat_reqst;
+               struct srpc_batch_reqst *req = &msg->msg_body.bat_reqst;
 
                 __swab32s(&req->bar_opc);
                 __swab64s(&req->bar_rpyid);
@@ -1520,7 +1523,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_BATCH_REPLY) {
-                srpc_batch_reply_t *rep = &msg->msg_body.bat_reply;
+               struct srpc_batch_reply *rep = &msg->msg_body.bat_reply;
 
                 __swab32s(&rep->bar_status);
                 sfw_unpack_sid(rep->bar_sid);
@@ -1528,7 +1531,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_TEST_REQST) {
-                srpc_test_reqst_t *req = &msg->msg_body.tes_reqst;
+               struct srpc_test_reqst *req = &msg->msg_body.tes_reqst;
 
                 __swab64s(&req->tsr_rpyid);
                 __swab64s(&req->tsr_bulkid);
@@ -1542,7 +1545,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_TEST_REPLY) {
-                srpc_test_reply_t *rep = &msg->msg_body.tes_reply;
+               struct srpc_test_reply *rep = &msg->msg_body.tes_reply;
 
                 __swab32s(&rep->tsr_status);
                 sfw_unpack_sid(rep->tsr_sid);
@@ -1550,7 +1553,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_JOIN_REQST) {
-                srpc_join_reqst_t *req = &msg->msg_body.join_reqst;
+               struct srpc_join_reqst *req = &msg->msg_body.join_reqst;
 
                 __swab64s(&req->join_rpyid);
                 sfw_unpack_sid(req->join_sid);
@@ -1558,7 +1561,7 @@ sfw_unpack_message (srpc_msg_t *msg)
         }
 
         if (msg->msg_type == SRPC_MSG_JOIN_REPLY) {
-                srpc_join_reply_t *rep = &msg->msg_body.join_reply;
+               struct srpc_join_reply *rep = &msg->msg_body.join_reply;
 
                 __swab32s(&rep->join_status);
                 __swab32s(&rep->join_timeout);
@@ -1571,7 +1574,7 @@ sfw_unpack_message (srpc_msg_t *msg)
 }
 
 void
-sfw_abort_rpc (srpc_client_rpc_t *rpc)
+sfw_abort_rpc(struct srpc_client_rpc *rpc)
 {
        LASSERT(atomic_read(&rpc->crpc_refcount) > 0);
        LASSERT(rpc->crpc_service <= SRPC_FRAMEWORK_SERVICE_MAX_ID);
@@ -1583,7 +1586,7 @@ sfw_abort_rpc (srpc_client_rpc_t *rpc)
 }
 
 void
-sfw_post_rpc (srpc_client_rpc_t *rpc)
+sfw_post_rpc(struct srpc_client_rpc *rpc)
 {
        spin_lock(&rpc->crpc_lock);
 
@@ -1599,44 +1602,14 @@ sfw_post_rpc (srpc_client_rpc_t *rpc)
        return;
 }
 
-static srpc_service_t 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
-        }
-};
+static struct srpc_service sfw_services[] = {
+       { .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)
@@ -1644,8 +1617,8 @@ sfw_startup (void)
         int              i;
         int              rc;
         int              error;
-        srpc_service_t  *sv;
-        sfw_test_case_t *tsc;
+       struct srpc_service *sv;
+       struct sfw_test_case *tsc;
 
 
         if (session_timeout < 0) {
@@ -1739,8 +1712,8 @@ sfw_startup (void)
 void
 sfw_shutdown (void)
 {
-       srpc_service_t  *sv;
-       sfw_test_case_t *tsc;
+       struct srpc_service *sv;
+       struct sfw_test_case *tsc;
        int              i;
 
        spin_lock(&sfw_data.fw_lock);
@@ -1777,10 +1750,10 @@ sfw_shutdown (void)
         }
 
        while (!list_empty(&sfw_data.fw_zombie_rpcs)) {
-               srpc_client_rpc_t *rpc;
+               struct srpc_client_rpc *rpc;
 
                rpc = list_entry(sfw_data.fw_zombie_rpcs.next,
-                                srpc_client_rpc_t, crpc_list);
+                                struct srpc_client_rpc, crpc_list);
                list_del(&rpc->crpc_list);
 
                LIBCFS_FREE(rpc, srpc_client_rpc_size(rpc));
@@ -1796,7 +1769,7 @@ sfw_shutdown (void)
 
        while (!list_empty(&sfw_data.fw_tests)) {
                tsc = list_entry(sfw_data.fw_tests.next,
-                                sfw_test_case_t, tsc_list);
+                                struct sfw_test_case, tsc_list);
 
                srpc_wait_service_shutdown(tsc->tsc_srv_service);