Whamcloud - gitweb
LU-6106 test: skip test_16 to test_23 if MDS version older than 2.6.90
[fs/lustre-release.git] / lnet / utils / lst.c
index 044cbcd..81803db 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/
  * Author: Liang Zhen <liangzhen@clusterfs.com>
  */
 
+#include <getopt.h>
+#include <pwd.h>
+#include <unistd.h>
+
 #include <libcfs/libcfsutil.h>
 #include <lnet/lnetctl.h>
 #include <lnet/lnetst.h>
-#include <lnet/nidstr.h>
-/* NB: these includes are layering violation */
-#include <lustre_ver.h>
-#include <lustre/lustre_idl.h>
+#include <lnet/lnet.h>
 
 lst_sid_t LST_INVALID_SID = {LNET_NID_ANY, -1};
 static lst_sid_t           session_id;
 static int                 session_key;
 
-#if LUSTRE_VERSION_CODE >= OBD_OCD_VERSION(2, 6, 50, 0)
-/* assume all nodes can understand feature LST_FEAT_BULK_LEN */
-static unsigned                   session_features = LST_FEATS_MASK;
-#else
-static unsigned                   session_features = LST_FEATS_EMPTY;
-#endif
-
-static lstcon_trans_stat_t trans_stat;
+/* All nodes running 2.6.50 or later understand feature LST_FEAT_BULK_LEN */
+static unsigned                session_features = LST_FEATS_MASK;
+static lstcon_trans_stat_t     trans_stat;
 
 typedef struct list_string {
-        struct list_string *lstr_next;
-        int                 lstr_sz;
-        char                lstr_str[0];
+       struct list_string *lstr_next;
+       int                 lstr_sz;
+       char                lstr_str[0];
 } lstr_t;
 
 #ifndef offsetof
@@ -288,7 +284,7 @@ out:
                                 rc = -1;
                         }
 
-                        (*idspp)[i].pid = LUSTRE_LNET_PID;
+                       (*idspp)[i].pid = LNET_PID_LUSTRE;
                         i++;
                 }
 
@@ -2954,8 +2950,10 @@ lst_get_bulk_param(int argc, char **argv, lst_test_bulk_param_t *bulk)
                                 return -1;
                         }
 
-                } else if (strcasestr(argv[i], "size=") == argv[i] ||
-                         strcasestr(argv[i], "s=") == argv[i]) {
+               } else if (strcasestr(argv[i], "size=") == argv[i] ||
+                          strcasestr(argv[i], "s=") == argv[i]) {
+                       int max_size = sysconf(_SC_PAGESIZE) * LNET_MAX_IOV;
+
                         tok = strchr(argv[i], '=') + 1;
 
                         bulk->blk_size = strtol(tok, &end, 0);
@@ -2972,7 +2970,7 @@ lst_get_bulk_param(int argc, char **argv, lst_test_bulk_param_t *bulk)
                         else if (*end == 'm' || *end == 'M')
                                 bulk->blk_size *= 1024 * 1024;
 
-                       if (bulk->blk_size > PAGE_CACHE_SIZE * LNET_MAX_IOV) {
+                       if (bulk->blk_size > max_size) {
                                 fprintf(stderr, "Size exceed limitation: %d bytes\n",
                                         bulk->blk_size);
                                 return -1;