-/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
- * vim:expandtab:shiftwidth=8:tabstop=8:
- *
+/*
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
*
* This file is part of Portals, http://www.sf.net/projects/lustre/
return (0);
}
+int
+lnet_parse_nid(char *nid_str, lnet_process_id_t *id_ptr)
+{
+ id_ptr->pid = LNET_PID_ANY;
+ id_ptr->nid = libcfs_str2nid(nid_str);
+ if (id_ptr->nid == LNET_NID_ANY) {
+ fprintf (stderr, "Can't parse nid \"%s\"\n", nid_str);
+ return -1;
+ }
+
+ return 0;
+}
+
int g_net_is_set (char *cmd)
{
if (g_net_set)
return -1;
}
+ if (LNET_NETTYP(net) == CIBLND ||
+ LNET_NETTYP(net) == OPENIBLND ||
+ LNET_NETTYP(net) == IIBLND ||
+ LNET_NETTYP(net) == VIBLND) {
+ fprintf(stderr, "Net %s obsoleted\n", libcfs_lnd2str(net));
+ return -1;
+ }
+
g_net_set = 1;
g_net = net;
return 0;
int rc;
if (!g_net_is_compatible (argv[0], SOCKLND, RALND, PTLLND, MXLND,
- OPENIBLND, CIBLND, IIBLND, VIBLND, O2IBLND, 0))
+ O2IBLND, 0))
return -1;
for (index = 0;;index++) {
data.ioc_u32[5] & 0xffff, /* nactiveq */
data.ioc_u32[6] >> 16, /* credits */
data.ioc_u32[6] & 0xffff); /* outstanding_credits */
- } else if (g_net_is_compatible(NULL, RALND, OPENIBLND, CIBLND, VIBLND, 0)) {
+ } else if (g_net_is_compatible(NULL, RALND, 0)) {
printf ("%-20s [%d]@%s:%d\n",
libcfs_nid2str(data.ioc_nid), /* peer nid */
data.ioc_count, /* peer persistence */
int port = 0;
int rc;
- if (!g_net_is_compatible (argv[0], SOCKLND, RALND,
- OPENIBLND, CIBLND, IIBLND, VIBLND, 0))
+ if (!g_net_is_compatible (argv[0], SOCKLND, RALND, 0))
return -1;
- if (g_net_is_compatible(NULL, SOCKLND, OPENIBLND, CIBLND, RALND, 0)) {
- if (argc != 4) {
- fprintf (stderr, "usage(tcp,openib,cib,ra): %s nid ipaddr port\n",
- argv[0]);
- return 0;
- }
- } else if (g_net_is_compatible(NULL, VIBLND, 0)) {
- if (argc != 3) {
- fprintf (stderr, "usage(vib): %s nid ipaddr\n",
- argv[0]);
- return 0;
- }
- } else if (argc != 2) {
- fprintf (stderr, "usage(iib): %s nid\n", argv[0]);
+ if (argc != 4) {
+ fprintf (stderr, "usage(tcp,ra): %s nid ipaddr port\n",
+ argv[0]);
return 0;
}
return -1;
}
- if (g_net_is_compatible (NULL, SOCKLND, OPENIBLND, CIBLND, VIBLND, RALND, 0) &&
- lnet_parse_ipaddr (&ip, argv[2]) != 0) {
+ if (lnet_parse_ipaddr (&ip, argv[2]) != 0) {
fprintf (stderr, "Can't parse ip addr: %s\n", argv[2]);
return -1;
}
- if (g_net_is_compatible (NULL, SOCKLND, OPENIBLND, CIBLND, RALND, 0) &&
- lnet_parse_port (&port, argv[3]) != 0) {
+ if (lnet_parse_port (&port, argv[3]) != 0) {
fprintf (stderr, "Can't parse port: %s\n", argv[3]);
return -1;
}
int rc;
if (!g_net_is_compatible (argv[0], SOCKLND, RALND, MXLND, PTLLND,
- OPENIBLND, CIBLND, IIBLND, VIBLND, O2IBLND, 0))
+ O2IBLND, 0))
return -1;
if (g_net_is_compatible(NULL, SOCKLND, 0)) {
int index;
int rc;
- if (!g_net_is_compatible (argv[0], SOCKLND, RALND, MXLND,
- OPENIBLND, CIBLND, IIBLND, VIBLND, O2IBLND, 0))
+ if (!g_net_is_compatible (argv[0], SOCKLND, RALND, MXLND, O2IBLND, 0))
return -1;
for (index = 0; ; index++) {
return 0;
}
- if (!g_net_is_compatible (NULL, SOCKLND, RALND, MXLND,
- OPENIBLND, CIBLND, IIBLND, VIBLND, O2IBLND, 0))
+ if (!g_net_is_compatible (NULL, SOCKLND, RALND, MXLND, O2IBLND, 0))
return 0;
if (argc >= 2 &&
sep = strchr(argv[1], '-');
if (sep == NULL) {
- id.pid = LNET_PID_ANY;
- id.nid = libcfs_str2nid(argv[1]);
- if (id.nid == LNET_NID_ANY) {
- fprintf (stderr, "Can't parse nid \"%s\"\n", argv[1]);
+ rc = lnet_parse_nid(argv[1], &id);
+ if (rc != 0)
return -1;
- }
} else {
char *end;
else
id.pid = strtoul(argv[1], &end, 0);
- id.nid = libcfs_str2nid(sep + 1);
+ if (end != sep) { /* assuming '-' is part of hostname */
+ rc = lnet_parse_nid(argv[1], &id);
+ if (rc != 0)
+ return -1;
+ } else {
+ id.nid = libcfs_str2nid(sep + 1);
- if (end != sep ||
- id.nid == LNET_NID_ANY) {
- fprintf(stderr, "Can't parse process id \"%s\"\n", argv[1]);
- return -1;
+ if (id.nid == LNET_NID_ANY) {
+ fprintf(stderr,
+ "Can't parse process id \"%s\"\n",
+ argv[1]);
+ return -1;
+ }
}
}