Whamcloud - gitweb
LU-1154 clio: rename coo_attr_set to coo_attr_update
[fs/lustre-release.git] / lnet / selftest / console.c
index 8179f10..5687f32 100644 (file)
@@ -27,7 +27,7 @@
  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2012, Intel Corporation.
+ * Copyright (c) 2012, 2014, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
@@ -62,7 +62,7 @@ do {                                                    \
 
 lstcon_session_t        console_session;
 
-void
+static void
 lstcon_node_get(lstcon_node_t *nd)
 {
         LASSERT (nd->nd_ref >= 1);
@@ -88,7 +88,7 @@ lstcon_node_find(lnet_process_id_t id, lstcon_node_t **ndpp, int create)
                *ndpp = ndl->ndl_node;
                return 0;
        }
-        
+
         if (!create)
                 return -ENOENT;
 
@@ -116,7 +116,7 @@ lstcon_node_find(lnet_process_id_t id, lstcon_node_t **ndpp, int create)
        return 0;
 }
 
-void
+static void
 lstcon_node_put(lstcon_node_t *nd)
 {
        lstcon_ndlink_t *ndl;
@@ -173,7 +173,7 @@ lstcon_ndlink_find(struct list_head *hash,
                 lstcon_node_put(nd);
                 return -ENOMEM;
         }
-        
+
         *ndlpp = ndl;
 
        ndl->ndl_node = nd;
@@ -351,7 +351,7 @@ lstcon_group_move(lstcon_group_t *old, lstcon_group_t *new)
        }
 }
 
-int
+static int
 lstcon_sesrpc_condition(int transop, lstcon_node_t *nd, void *arg)
 {
         lstcon_group_t *grp = (lstcon_group_t *)arg;
@@ -380,9 +380,9 @@ lstcon_sesrpc_condition(int transop, lstcon_node_t *nd, void *arg)
         return 1;
 }
 
-int
+static int
 lstcon_sesrpc_readent(int transop, srpc_msg_t *msg,
-                      lstcon_rpc_ent_t *ent_up)
+                     lstcon_rpc_ent_t __user *ent_up)
 {
         srpc_debug_reply_t *rep;
 
@@ -411,8 +411,8 @@ lstcon_sesrpc_readent(int transop, srpc_msg_t *msg,
 
 static int
 lstcon_group_nodes_add(lstcon_group_t *grp,
-                      int count, lnet_process_id_t *ids_up,
-                      unsigned *featp, struct list_head *result_up)
+                      int count, lnet_process_id_t __user *ids_up,
+                      unsigned *featp, struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t      *trans;
         lstcon_ndlink_t         *ndl;
@@ -478,8 +478,8 @@ lstcon_group_nodes_add(lstcon_group_t *grp,
 
 static int
 lstcon_group_nodes_remove(lstcon_group_t *grp,
-                          int count, lnet_process_id_t *ids_up,
-                         struct list_head *result_up)
+                         int count, lnet_process_id_t __user *ids_up,
+                         struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t     *trans;
         lstcon_ndlink_t        *ndl;
@@ -501,7 +501,7 @@ lstcon_group_nodes_remove(lstcon_group_t *grp,
                         rc = -EFAULT;
                         goto error;
                 }
-                
+
                 /* move node to tmp group */
                 if (lstcon_group_ndlink_find(grp, id, &ndl, 0) == 0)
                         lstcon_group_ndlink_move(grp, tmp, ndl);
@@ -556,8 +556,8 @@ lstcon_group_add(char *name)
 }
 
 int
-lstcon_nodes_add(char *name, int count, lnet_process_id_t *ids_up,
-                unsigned *featp, struct list_head *result_up)
+lstcon_nodes_add(char *name, int count, lnet_process_id_t __user *ids_up,
+                unsigned *featp, struct list_head __user *result_up)
 {
         lstcon_group_t         *grp;
         int                     rc;
@@ -661,7 +661,8 @@ lstcon_group_clean(char *name, int args)
 
 int
 lstcon_nodes_remove(char *name, int count,
-                   lnet_process_id_t *ids_up, struct list_head *result_up)
+                   lnet_process_id_t __user *ids_up,
+                   struct list_head __user *result_up)
 {
         lstcon_group_t *grp = NULL;
         int             rc;
@@ -690,7 +691,7 @@ lstcon_nodes_remove(char *name, int count,
 }
 
 int
-lstcon_group_refresh(char *name, struct list_head *result_up)
+lstcon_group_refresh(char *name, struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t      *trans;
         lstcon_group_t          *grp;
@@ -751,7 +752,7 @@ lstcon_group_list(int index, int len, char __user *name_up)
 
 static int
 lstcon_nodes_getent(struct list_head *head, int *index_p,
-                    int *count_p, lstcon_node_ent_t *dents_up)
+                   int *count_p, lstcon_node_ent_t __user *dents_up)
 {
         lstcon_ndlink_t  *ndl;
         lstcon_node_t    *nd;
@@ -790,8 +791,9 @@ lstcon_nodes_getent(struct list_head *head, int *index_p,
 }
 
 int
-lstcon_group_info(char *name, lstcon_ndlist_ent_t *gents_p,
-                  int *index_p, int *count_p, lstcon_node_ent_t *dents_up)
+lstcon_group_info(char *name, lstcon_ndlist_ent_t __user *gents_p,
+                 int *index_p, int *count_p,
+                 lstcon_node_ent_t __user *dents_up)
 {
         lstcon_ndlist_ent_t *gentp;
         lstcon_group_t      *grp;
@@ -804,7 +806,7 @@ lstcon_group_info(char *name, lstcon_ndlist_ent_t *gents_p,
                 return rc;
         }
 
-        if (dents_up != 0) {
+       if (dents_up != NULL) {
                 /* verbose query */
                 rc = lstcon_nodes_getent(&grp->grp_ndl_list,
                                          index_p, count_p, dents_up);
@@ -937,9 +939,9 @@ lstcon_batch_list(int index, int len, char __user *name_up)
 }
 
 int
-lstcon_batch_info(char *name, lstcon_test_batch_ent_t *ent_up, int server,
-                  int testidx, int *index_p, int *ndent_p,
-                  lstcon_node_ent_t *dents_up)
+lstcon_batch_info(char *name, lstcon_test_batch_ent_t __user *ent_up,
+                 int server, int testidx, int *index_p, int *ndent_p,
+                 lstcon_node_ent_t __user *dents_up)
 {
         lstcon_test_batch_ent_t *entp;
        struct list_head        *clilst;
@@ -1011,7 +1013,7 @@ lstcon_batch_info(char *name, lstcon_test_batch_ent_t *ent_up, int server,
        return rc;
 }
 
-int
+static int
 lstcon_batrpc_condition(int transop, lstcon_node_t *nd, void *arg)
 {
         switch (transop) {
@@ -1035,7 +1037,7 @@ lstcon_batrpc_condition(int transop, lstcon_node_t *nd, void *arg)
 
 static int
 lstcon_batch_op(lstcon_batch_t *bat, int transop,
-               struct list_head *result_up)
+               struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t *trans;
         int                 rc;
@@ -1058,7 +1060,7 @@ lstcon_batch_op(lstcon_batch_t *bat, int transop,
 }
 
 int
-lstcon_batch_run(char *name, int timeout, struct list_head *result_up)
+lstcon_batch_run(char *name, int timeout, struct list_head __user *result_up)
 {
         lstcon_batch_t *bat;
         int             rc;
@@ -1080,7 +1082,7 @@ lstcon_batch_run(char *name, int timeout, struct list_head *result_up)
 }
 
 int
-lstcon_batch_stop(char *name, int force, struct list_head *result_up)
+lstcon_batch_stop(char *name, int force, struct list_head __user *result_up)
 {
         lstcon_batch_t *bat;
         int             rc;
@@ -1093,7 +1095,7 @@ lstcon_batch_stop(char *name, int force, struct list_head *result_up)
         bat->bat_arg = force;
 
         rc = lstcon_batch_op(bat, LST_TRANS_TSBSTOP, result_up);
-        
+
         /* mark batch as stopped if all RPCs finished */
         if (lstcon_tsbop_stat_failure(lstcon_trans_stat(), 0) == 0)
                 bat->bat_state = LST_BATCH_IDLE;
@@ -1154,7 +1156,7 @@ lstcon_batch_destroy(lstcon_batch_t *bat)
        LIBCFS_FREE(bat, sizeof(lstcon_batch_t));
 }
 
-int
+static int
 lstcon_testrpc_condition(int transop, lstcon_node_t *nd, void *arg)
 {
        lstcon_test_t    *test;
@@ -1179,7 +1181,7 @@ lstcon_testrpc_condition(int transop, lstcon_node_t *nd, void *arg)
         if (transop == LST_TRANS_TSBCLIADD) {
                 hash = batch->bat_cli_hash;
                 head = &batch->bat_cli_list;
-        
+
         } else {
                 LASSERT (transop == LST_TRANS_TSBSRVADD);
 
@@ -1199,7 +1201,7 @@ lstcon_testrpc_condition(int transop, lstcon_node_t *nd, void *arg)
 }
 
 static int
-lstcon_test_nodes_add(lstcon_test_t *test, struct list_head *result_up)
+lstcon_test_nodes_add(lstcon_test_t *test, struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t     *trans;
         lstcon_group_t         *grp;
@@ -1297,7 +1299,7 @@ lstcon_test_add(char *batch_name, int type, int loop,
                int concur, int dist, int span,
                char *src_name, char *dst_name,
                void *param, int paramlen, int *retp,
-               struct list_head *result_up)
+               struct list_head __user *result_up)
 {
        lstcon_test_t    *test   = NULL;
        int              rc;
@@ -1384,7 +1386,7 @@ out:
        return rc;
 }
 
-int
+static int
 lstcon_test_find(lstcon_batch_t *batch, int idx, lstcon_test_t **testpp)
 {
        lstcon_test_t *test;
@@ -1399,9 +1401,9 @@ lstcon_test_find(lstcon_batch_t *batch, int idx, lstcon_test_t **testpp)
        return -ENOENT;
 }
 
-int
+static int
 lstcon_tsbrpc_readent(int transop, srpc_msg_t *msg,
-                      lstcon_rpc_ent_t *ent_up)
+                     lstcon_rpc_ent_t __user *ent_up)
 {
         srpc_batch_reply_t *rep = &msg->msg_body.bat_reply;
 
@@ -1418,7 +1420,7 @@ lstcon_tsbrpc_readent(int transop, srpc_msg_t *msg,
 
 int
 lstcon_test_batch_query(char *name, int testidx, int client,
-                       int timeout, struct list_head *result_up)
+                       int timeout, struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t *trans;
        struct list_head   *translist;
@@ -1447,11 +1449,11 @@ lstcon_test_batch_query(char *name, int testidx, int client,
                         CDEBUG(D_NET, "Can't find test: %d\n", testidx);
                         return rc;
                 }
-        
+
                 translist = &test->tes_trans_list;
                 ndlist    = &test->tes_src_grp->grp_ndl_list;
                 hdr       = &test->tes_hdr;
-        } 
+       }
 
         transop = client ? LST_TRANS_TSBCLIQRY : LST_TRANS_TSBSRVQRY;
 
@@ -1478,21 +1480,23 @@ lstcon_test_batch_query(char *name, int testidx, int client,
         return rc;
 }
 
-int
+static int
 lstcon_statrpc_readent(int transop, srpc_msg_t *msg,
-                       lstcon_rpc_ent_t *ent_up)
+                      lstcon_rpc_ent_t __user *ent_up)
 {
-        srpc_stat_reply_t *rep = &msg->msg_body.stat_reply;
-        sfw_counters_t    *sfwk_stat;
-        srpc_counters_t   *srpc_stat;
-        lnet_counters_t   *lnet_stat;
-        
+       srpc_stat_reply_t *rep = &msg->msg_body.stat_reply;
+       sfw_counters_t __user  *sfwk_stat;
+       srpc_counters_t __user *srpc_stat;
+       lnet_counters_t __user *lnet_stat;
+
         if (rep->str_status != 0)
                 return 0;
 
-        sfwk_stat = (sfw_counters_t *)&ent_up->rpe_payload[0];
-        srpc_stat = (srpc_counters_t *)((char *)sfwk_stat + sizeof(*sfwk_stat));
-        lnet_stat = (lnet_counters_t *)((char *)srpc_stat + sizeof(*srpc_stat));
+       sfwk_stat = (sfw_counters_t __user *)&ent_up->rpe_payload[0];
+       srpc_stat = (srpc_counters_t __user *)
+               ((char __user *)sfwk_stat + sizeof(*sfwk_stat));
+       lnet_stat = (lnet_counters_t __user *)
+               ((char __user *)srpc_stat + sizeof(*srpc_stat));
 
        if (copy_to_user(sfwk_stat, &rep->str_fw, sizeof(*sfwk_stat)) ||
            copy_to_user(srpc_stat, &rep->str_rpc, sizeof(*srpc_stat)) ||
@@ -1502,9 +1506,9 @@ lstcon_statrpc_readent(int transop, srpc_msg_t *msg,
         return 0;
 }
 
-int
+static int
 lstcon_ndlist_stat(struct list_head *ndlist,
-                  int timeout, struct list_head *result_up)
+                  int timeout, struct list_head __user *result_up)
 {
        struct list_head    head;
        lstcon_rpc_trans_t *trans;
@@ -1529,7 +1533,8 @@ lstcon_ndlist_stat(struct list_head *ndlist,
 }
 
 int
-lstcon_group_stat(char *grp_name, int timeout, struct list_head *result_up)
+lstcon_group_stat(char *grp_name, int timeout,
+                 struct list_head __user *result_up)
 {
         lstcon_group_t     *grp;
         int                 rc;
@@ -1548,8 +1553,8 @@ lstcon_group_stat(char *grp_name, int timeout, struct list_head *result_up)
 }
 
 int
-lstcon_nodes_stat(int count, lnet_process_id_t *ids_up,
-                 int timeout, struct list_head *result_up)
+lstcon_nodes_stat(int count, lnet_process_id_t __user *ids_up,
+                 int timeout, struct list_head __user *result_up)
 {
         lstcon_ndlink_t         *ndl;
         lstcon_group_t          *tmp;
@@ -1591,10 +1596,10 @@ lstcon_nodes_stat(int count, lnet_process_id_t *ids_up,
         return rc;
 }
 
-int
+static int
 lstcon_debug_ndlist(struct list_head *ndlist,
                    struct list_head *translist,
-                   int timeout, struct list_head *result_up)
+                   int timeout, struct list_head __user *result_up)
 {
         lstcon_rpc_trans_t *trans;
         int                 rc;
@@ -1616,7 +1621,7 @@ lstcon_debug_ndlist(struct list_head *ndlist,
 }
 
 int
-lstcon_session_debug(int timeout, struct list_head *result_up)
+lstcon_session_debug(int timeout, struct list_head __user *result_up)
 {
         return lstcon_debug_ndlist(&console_session.ses_ndl_list,
                                    NULL, timeout, result_up);
@@ -1624,7 +1629,7 @@ lstcon_session_debug(int timeout, struct list_head *result_up)
 
 int
 lstcon_batch_debug(int timeout, char *name,
-                  int client, struct list_head *result_up)
+                  int client, struct list_head __user *result_up)
 {
         lstcon_batch_t *bat;
         int             rc;
@@ -1642,7 +1647,7 @@ lstcon_batch_debug(int timeout, char *name,
 
 int
 lstcon_group_debug(int timeout, char *name,
-                  struct list_head *result_up)
+                  struct list_head __user *result_up)
 {
         lstcon_group_t *grp;
         int             rc;
@@ -1660,8 +1665,8 @@ lstcon_group_debug(int timeout, char *name,
 
 int
 lstcon_nodes_debug(int timeout,
-                   int count, lnet_process_id_t *ids_up, 
-                  struct list_head *result_up)
+                  int count, lnet_process_id_t __user *ids_up,
+                  struct list_head __user *result_up)
 {
         lnet_process_id_t  id;
         lstcon_ndlink_t   *ndl;
@@ -1721,11 +1726,9 @@ lstcon_new_session_id(lst_sid_t *sid)
         sid->ses_stamp = cfs_time_current();
 }
 
-extern srpc_service_t lstcon_acceptor_service;
-
 int
 lstcon_session_new(char *name, int key, unsigned feats,
-                  int timeout, int force, lst_sid_t *sid_up)
+                  int timeout, int force, lst_sid_t __user *sid_up)
 {
         int     rc = 0;
         int     i;
@@ -1793,8 +1796,10 @@ lstcon_session_new(char *name, int key, unsigned feats,
 }
 
 int
-lstcon_session_info(lst_sid_t *sid_up, int *key_up, unsigned *featp,
-                    lstcon_ndlist_ent_t *ndinfo_up, char *name_up, int len)
+lstcon_session_info(lst_sid_t __user *sid_up, int __user *key_up,
+                   unsigned __user *featp,
+                   lstcon_ndlist_ent_t __user *ndinfo_up,
+                   char __user *name_up, int len)
 {
         lstcon_ndlist_ent_t *entp;
         lstcon_ndlink_t     *ndl;
@@ -1837,7 +1842,7 @@ lstcon_session_end()
 
         LASSERT (console_session.ses_state == LST_SESSION_ACTIVE);
 
-        rc = lstcon_rpc_trans_ndlist(&console_session.ses_ndl_list, 
+       rc = lstcon_rpc_trans_ndlist(&console_session.ses_ndl_list,
                                      NULL, LST_TRANS_SESEND, NULL,
                                      lstcon_sesrpc_condition, &trans);
         if (rc != 0) {
@@ -2005,8 +2010,8 @@ out:
         return rc;
 }
 
-srpc_service_t lstcon_acceptor_service;
-void lstcon_init_acceptor_service(void)
+static srpc_service_t lstcon_acceptor_service;
+static void lstcon_init_acceptor_service(void)
 {
         /* initialize selftest console acceptor service table */
         lstcon_acceptor_service.sv_name    = "join session";
@@ -2015,7 +2020,7 @@ void lstcon_init_acceptor_service(void)
        lstcon_acceptor_service.sv_wi_total = SFW_FRWK_WI_MAX;
 }
 
-extern int lstcon_ioctl_entry(unsigned int cmd, struct libcfs_ioctl_data *data);
+int lstcon_ioctl_entry(unsigned int cmd, struct libcfs_ioctl_hdr *hdr);
 
 DECLARE_IOCTL_HANDLER(lstcon_ioctl_handler, lstcon_ioctl_entry);