Whamcloud - gitweb
Prepare for Build 34
[fs/lustre-release.git] / lnet / lnet / config.c
index da39bef..f8d6dea 100644 (file)
@@ -16,8 +16,8 @@
  * in the LICENSE file that accompanied this code).
  *
  * You should have received a copy of the GNU General Public License
- * version 2 along with this program; If not, see [sun.com URL with a
- * copy of GPLv2].
+ * version 2 along with this program; If not, see
+ * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
  *
  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  * CA 95054 USA or visit www.sun.com if you need additional information or
@@ -86,31 +86,17 @@ lnet_issep (char c)
        }
 }
 
-int
-lnet_iswhite (char c)
-{
-       switch (c) {
-       case ' ':
-       case '\t':
-       case '\n':
-       case '\r':
-               return 1;
-       default:
-               return 0;
-       }
-}
-
 char *
 lnet_trimwhite(char *str)
 {
        char *end;
        
-       while (lnet_iswhite(*str))
+        while (cfs_iswhite(*str))
                str++;
        
        end = str + strlen(str);
        while (end > str) {
-               if (!lnet_iswhite(end[-1]))
+                if (!cfs_iswhite(end[-1]))
                        break;
                end--;
        }
@@ -131,7 +117,7 @@ lnet_net_unique(__u32 net, struct list_head *nilist)
                 if (LNET_NIDNET(ni->ni_nid) == net)
                         return 0;
         }
-        
+
         return 1;
 }
 
@@ -145,20 +131,21 @@ lnet_new_ni(__u32 net, struct list_head *nilist)
                                    libcfs_net2str(net));
                 return NULL;
         }
-        
+
         LIBCFS_ALLOC(ni, sizeof(*ni));
         if (ni == NULL) {
                 CERROR("Out of memory creating network %s\n",
                        libcfs_net2str(net));
                 return NULL;
         }
-        
+
         /* zero counters/flags, NULL pointers... */
         memset(ni, 0, sizeof(*ni));
 
         /* LND will fill in the address part of the NID */
         ni->ni_nid = LNET_MKNID(net, 0);
         CFS_INIT_LIST_HEAD(&ni->ni_txq);
+        ni->ni_last_alive = cfs_time_current();
 
         list_add_tail(&ni->ni_list, nilist);
         return ni;
@@ -190,7 +177,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
         the_lnet.ln_network_tokens = tokens;
         the_lnet.ln_network_tokens_nob = tokensize;
         memcpy (tokens, networks, tokensize);
-       str = tokens;
+        str = tokens;
         
         /* Add in the loopback network */
         ni = lnet_new_ni(LNET_MKNET(LOLND, 0), nilist);
@@ -217,7 +204,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                        
                        if (net == LNET_NIDNET(LNET_NID_ANY)) {
                                 lnet_syntax("networks", networks, 
-                                            str - tokens, strlen(str));
+                                            (int)(str - tokens), strlen(str));
                                 LCONSOLE_ERROR_MSG(0x113, "Unrecognised network"
                                                    " type\n");
                                 goto failed;
@@ -235,7 +222,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                net = libcfs_str2net(lnet_trimwhite(str));
                if (net == LNET_NIDNET(LNET_NID_ANY)) {
                         lnet_syntax("networks", networks,
-                                    str - tokens, strlen(str));
+                                    (int)(str - tokens), strlen(str));
                         goto failed;
                 } 
 
@@ -250,7 +237,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                bracket = strchr(iface, ')');
                if (bracket == NULL) {
                         lnet_syntax("networks", networks,
-                                    iface - tokens, strlen(iface));
+                                    (int)(iface - tokens), strlen(iface));
                         goto failed;
                }
 
@@ -263,7 +250,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                        iface = lnet_trimwhite(iface);
                        if (*iface == 0) {
                                 lnet_syntax("networks", networks, 
-                                            iface - tokens, strlen(iface));
+                                            (int)(iface - tokens), strlen(iface));
                                 goto failed;
                         }
 
@@ -285,7 +272,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                        str = lnet_trimwhite(str);
                        if (*str != 0) {
                                 lnet_syntax("networks", networks,
-                                            str - tokens, strlen(str));
+                                            (int)(str - tokens), strlen(str));
                                 goto failed;
                         }
                        str = comma + 1;
@@ -295,7 +282,7 @@ lnet_parse_networks(struct list_head *nilist, char *networks)
                str = lnet_trimwhite(str);
                if (*str != 0) {
                         lnet_syntax("networks", networks,
-                                    str - tokens, strlen(str));
+                                    (int)(str - tokens), strlen(str));
                         goto failed;
                 }
        }
@@ -394,7 +381,7 @@ lnet_str2tbs_sep (struct list_head *tbs, char *str)
        /* Split 'str' into separate commands */
        for (;;) {
                 /* skip leading whitespace */
-                while (lnet_iswhite(*str))
+                while (cfs_iswhite(*str))
                         str++;
                 
                /* scan for separator or comment */
@@ -402,7 +389,7 @@ lnet_str2tbs_sep (struct list_head *tbs, char *str)
                        if (lnet_issep(*sep) || *sep == '#')
                                break;
 
-               nob = sep - str;
+               nob = (int)(sep - str);
                if (nob > 0) {
                        ltb = lnet_new_text_buf(nob);
                        if (ltb == NULL) {
@@ -411,7 +398,7 @@ lnet_str2tbs_sep (struct list_head *tbs, char *str)
                        }
                        
                         for (i = 0; i < nob; i++)
-                                if (lnet_iswhite(str[i]))
+                                if (cfs_iswhite(str[i]))
                                         ltb->ltb_text[i] = ' ';
                                 else
                                         ltb->ltb_text[i] = str[i];
@@ -443,7 +430,7 @@ lnet_expand1tb (struct list_head *list,
               char *str, char *sep1, char *sep2, 
               char *item, int itemlen)
 {
-       int              len1 = sep1 - str;
+       int              len1 = (int)(sep1 - str);
        int              len2 = strlen(sep2 + 1);
        lnet_text_buf_t *ltb;
 
@@ -504,7 +491,7 @@ lnet_str2tbs_expand (struct list_head *tbs, char *str)
 
                                /* simple string enumeration */
                                if (lnet_expand1tb(&pending, str, sep, sep2,
-                                                   parsed, enditem - parsed) != 0)
+                                                   parsed, (int)(enditem - parsed)) != 0)
                                        goto failed;
                                
                                continue;
@@ -586,7 +573,7 @@ lnet_parse_route (char *str, int *im_a_router)
        sep = str;
        for (;;) {
                /* scan for token start */
-               while (lnet_iswhite(*sep))
+                while (cfs_iswhite(*sep))
                        sep++;
                if (*sep == 0) {
                        if (ntokens < (got_hops ? 3 : 2))
@@ -598,7 +585,7 @@ lnet_parse_route (char *str, int *im_a_router)
                token = sep++;
 
                /* scan for token end */
-               while (*sep != 0 && !lnet_iswhite(*sep))
+                while (*sep != 0 && !cfs_iswhite(*sep))
                        sep++;
                if (*sep != 0)
                        *sep++ = 0;
@@ -686,7 +673,7 @@ lnet_parse_route (char *str, int *im_a_router)
         goto out;
         
  token_error:
-       lnet_syntax("routes", cmd, token - str, strlen(token));
+       lnet_syntax("routes", cmd, (int)(token - str), strlen(token));
  out:
        lnet_free_text_bufs(&nets);
        lnet_free_text_bufs(&gateways);
@@ -946,7 +933,7 @@ lnet_match_network_tokens(char *net_entry, __u32 *ipaddrs, int nip)
         sep = tokens;
         for (;;) {
                 /* scan for token start */
-                while (lnet_iswhite(*sep))
+                while (cfs_iswhite(*sep))
                         sep++;
                 if (*sep == 0)
                         break;
@@ -954,7 +941,7 @@ lnet_match_network_tokens(char *net_entry, __u32 *ipaddrs, int nip)
                 token = sep++;
                 
                 /* scan for token end */
-                while (*sep != 0 && !lnet_iswhite(*sep))
+                while (*sep != 0 && !cfs_iswhite(*sep))
                         sep++;
                 if (*sep != 0)
                         *sep++ = 0;
@@ -969,7 +956,7 @@ lnet_match_network_tokens(char *net_entry, __u32 *ipaddrs, int nip)
                 rc = lnet_match_network_token(token, ipaddrs, nip);
                 if (rc < 0) {
                         lnet_syntax("ip2nets", net_entry,
-                                    token - tokens, len);
+                                    (int)(token - tokens), len);
                         return rc;
                 }
 
@@ -1027,7 +1014,7 @@ lnet_splitnets(char *source, struct list_head *nets)
                     bracket < sep) {
                         /* netspec lists interfaces... */
 
-                        offset2 = offset + (bracket - tb->ltb_text);
+                        offset2 = offset + (int)(bracket - tb->ltb_text);
                         len = strlen(bracket);
 
                         bracket = strchr(bracket + 1, ')');
@@ -1068,7 +1055,7 @@ lnet_splitnets(char *source, struct list_head *nets)
                 if (sep == NULL)
                         return 0;
 
-                offset += sep - tb->ltb_text;
+                offset += (int)(sep - tb->ltb_text);
                 tb2 = lnet_new_text_buf(strlen(sep));
                 if (tb2 == NULL)
                         return -ENOMEM;