From b832fb34b3e184df884d32e63bf8be8480eb4e21 Mon Sep 17 00:00:00 2001 From: Arshad Hussain Date: Tue, 21 Apr 2020 23:37:15 +0530 Subject: [PATCH] LU-6142 utils: Fix style issues for portals.c This patch fixes issues reported by checkpatch for file lustre/utils/portals.c Test-Parameters: trivial Signed-off-by: Arshad Hussain Change-Id: I97eb576fe12a75e26d36dcf2228d5f161712e3e5 Reviewed-on: https://review.whamcloud.com/38362 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Shaun Tancheff Reviewed-by: Ben Evans Reviewed-by: Petros Koutoupis Reviewed-by: Oleg Drokin --- lustre/utils/portals.c | 1608 ++++++++++++++++++++++++------------------------ 1 file changed, 796 insertions(+), 812 deletions(-) diff --git a/lustre/utils/portals.c b/lustre/utils/portals.c index abc7dba..e859609 100644 --- a/lustre/utils/portals.c +++ b/lustre/utils/portals.c @@ -58,177 +58,176 @@ static char *ioc_buf = local_buf; int lnet_parse_bool (int *b, char *str) { - if (!strcasecmp (str, "no") || - !strcasecmp (str, "n") || - !strcasecmp (str, "off") || - !strcasecmp (str, "down") || - !strcasecmp (str, "disable")) - { - *b = 0; - return (0); - } - - if (!strcasecmp (str, "yes") || - !strcasecmp (str, "y") || - !strcasecmp (str, "on") || - !strcasecmp (str, "up") || - !strcasecmp (str, "enable")) - { - *b = 1; - return (0); - } - - return (-1); + if (!strcasecmp(str, "no") || + !strcasecmp(str, "n") || + !strcasecmp(str, "off") || + !strcasecmp(str, "down") || + !strcasecmp(str, "disable")) { + *b = 0; + + return 0; + } + + if (!strcasecmp(str, "yes") || + !strcasecmp(str, "y") || + !strcasecmp(str, "on") || + !strcasecmp(str, "up") || + !strcasecmp(str, "enable")) { + *b = 1; + + return 0; + } + + return -1; } int -lnet_parse_port (int *port, char *str) +lnet_parse_port(int *port, char *str) { - char *end; + char *end; - *port = strtol (str, &end, 0); + *port = strtol(str, &end, 0); - if (*end == 0 && /* parsed whole string */ - *port > 0 && *port < 65536) /* minimal sanity check */ - return (0); + if (*end == 0 && /* parsed whole string */ + *port > 0 && *port < 65536) /* minimal sanity check */ + return 0; - return (-1); + return -1; } #ifdef HAVE_GETHOSTBYNAME static struct hostent * -ptl_gethostbyname(char * hname) { - struct hostent *he; - he = gethostbyname(hname); - if (!he) { - switch(h_errno) { - case HOST_NOT_FOUND: - case NO_ADDRESS: - fprintf(stderr, "Unable to resolve hostname: %s\n", - hname); - break; - default: - fprintf(stderr, "gethostbyname error for %s: %s\n", - hname, strerror(h_errno)); - break; - } - return NULL; - } - return he; +ptl_gethostbyname(char *hname) +{ + struct hostent *he; + + he = gethostbyname(hname); + if (!he) { + switch (h_errno) { + case HOST_NOT_FOUND: + case NO_ADDRESS: + fprintf(stderr, "Unable to resolve hostname: %s\n", + hname); + break; + default: + fprintf(stderr, "gethostbyname error for %s: %s\n", + hname, strerror(h_errno)); + break; + } + return NULL; + } + return he; } #endif int -lnet_parse_ipquad (__u32 *ipaddrp, char *str) +lnet_parse_ipquad(__u32 *ipaddrp, char *str) { - int a; - int b; - int c; - int d; - - if (sscanf (str, "%d.%d.%d.%d", &a, &b, &c, &d) == 4 && - (a & ~0xff) == 0 && (b & ~0xff) == 0 && - (c & ~0xff) == 0 && (d & ~0xff) == 0) - { - *ipaddrp = (a<<24)|(b<<16)|(c<<8)|d; - return (0); - } - - return (-1); + int a, b, c, d; + + if (sscanf(str, "%d.%d.%d.%d", &a, &b, &c, &d) == 4 && + (a & ~0xff) == 0 && (b & ~0xff) == 0 && + (c & ~0xff) == 0 && (d & ~0xff) == 0) { + *ipaddrp = (a << 24) | (b << 16) | (c << 8) | d; + + return 0; + } + + return -1; } int -lnet_parse_ipaddr (__u32 *ipaddrp, char *str) +lnet_parse_ipaddr(__u32 *ipaddrp, char *str) { #ifdef HAVE_GETHOSTBYNAME - struct hostent *he; + struct hostent *he; #endif - if (!strcmp (str, "_all_")) { - *ipaddrp = 0; - return (0); - } + if (!strcmp(str, "_all_")) { + *ipaddrp = 0; + return 0; + } - if (lnet_parse_ipquad(ipaddrp, str) == 0) - return (0); + if (lnet_parse_ipquad(ipaddrp, str) == 0) + return 0; #ifdef HAVE_GETHOSTBYNAME - if ((('a' <= str[0] && str[0] <= 'z') || - ('A' <= str[0] && str[0] <= 'Z')) && - (he = ptl_gethostbyname (str)) != NULL) { - __u32 addr = *(__u32 *)he->h_addr; - - *ipaddrp = ntohl(addr); /* HOST byte order */ - return (0); - } + if ((('a' <= str[0] && str[0] <= 'z') || + ('A' <= str[0] && str[0] <= 'Z')) && + (he = ptl_gethostbyname(str)) != NULL) { + __u32 addr = *(__u32 *)he->h_addr; + + *ipaddrp = ntohl(addr); /* HOST byte order */ + return 0; + } #endif - return (-1); + return -1; } char * ptl_ipaddr_2_str(__u32 ipaddr, char *str, size_t strsize, int lookup) { #ifdef HAVE_GETHOSTBYNAME - __u32 net_ip; - struct hostent *he; + __u32 net_ip; + struct hostent *he; - if (lookup) { - net_ip = htonl (ipaddr); - he = gethostbyaddr (&net_ip, sizeof (net_ip), AF_INET); - if (he != NULL) { + if (lookup) { + net_ip = htonl(ipaddr); + he = gethostbyaddr(&net_ip, sizeof(net_ip), AF_INET); + if (he) { snprintf(str, strsize, "%s", he->h_name); - return (str); - } - } + return str; + } + } #endif - sprintf (str, "%d.%d.%d.%d", - (ipaddr >> 24) & 0xff, (ipaddr >> 16) & 0xff, - (ipaddr >> 8) & 0xff, ipaddr & 0xff); - return (str); + sprintf(str, "%d.%d.%d.%d", + (ipaddr >> 24) & 0xff, (ipaddr >> 16) & 0xff, + (ipaddr >> 8) & 0xff, ipaddr & 0xff); + return str; } int -lnet_parse_time (time_t *t, char *str) +lnet_parse_time(time_t *t, char *str) { - char *end; - int n; - struct tm tm; - - *t = strtol (str, &end, 0); - if (*end == 0) /* parsed whole string */ - return (0); - - memset (&tm, 0, sizeof (tm)); - n = sscanf (str, "%d-%d-%d-%d:%d:%d", - &tm.tm_year, &tm.tm_mon, &tm.tm_mday, - &tm.tm_hour, &tm.tm_min, &tm.tm_sec); - if (n != 6) - return (-1); - - tm.tm_mon--; /* convert to 0 == Jan */ - tm.tm_year -= 1900; /* y2k quirk */ - tm.tm_isdst = -1; /* dunno if it's daylight savings... */ - - *t = mktime (&tm); - if (*t == (time_t)-1) - return (-1); - - return (0); + char *end; + int n; + struct tm tm; + + *t = strtol(str, &end, 0); + if (*end == 0) /* parsed whole string */ + return 0; + + memset(&tm, 0, sizeof(tm)); + n = sscanf(str, "%d-%d-%d-%d:%d:%d", + &tm.tm_year, &tm.tm_mon, &tm.tm_mday, + &tm.tm_hour, &tm.tm_min, &tm.tm_sec); + if (n != 6) + return -1; + + tm.tm_mon--; /* convert to 0 == Jan */ + tm.tm_year -= 1900; /* y2k quirk */ + tm.tm_isdst = -1; /* dunno if it's daylight savings... */ + + *t = mktime(&tm); + if (*t == (time_t)-1) + return -1; + + return 0; } int lnet_parse_nid(char *nid_str, struct lnet_process_id *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; + 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; } static int g_net_is_set(char *cmd) @@ -236,7 +235,7 @@ static int g_net_is_set(char *cmd) if (g_net_set) return 1; - if (cmd != NULL) { + if (cmd) { char *net; if (g_net_interactive) @@ -265,21 +264,19 @@ static int g_net_is_compatible(char *cmd, ...) do { nal = va_arg(ap, int); - if (nal == LNET_NETTYP(g_net)) { - va_end (ap); - return 1; - } - } while (nal != 0); + if (nal == LNET_NETTYP(g_net)) { + va_end(ap); + return 1; + } + } while (nal != 0); - va_end (ap); + va_end(ap); - if (cmd != NULL) - fprintf (stderr, - "Command %s not compatible with %s NAL\n", - cmd, - libcfs_lnd2str(LNET_NETTYP(g_net))); + if (cmd) + fprintf(stderr, "Command %s not compatible with %s NAL\n", + cmd, libcfs_lnd2str(LNET_NETTYP(g_net))); - return 0; + return 0; } int ptl_initialize(int argc, char **argv) @@ -289,10 +286,9 @@ int ptl_initialize(int argc, char **argv) register_ioc_dev(LNET_DEV_ID, LNET_DEV_PATH); - return 0; + return 0; } - int jt_ptl_network(int argc, char **argv) { struct libcfs_ioctl_data data; @@ -393,237 +389,237 @@ jt_ptl_list_nids(int argc, char **argv) } int -jt_ptl_which_nid (int argc, char **argv) +jt_ptl_which_nid(int argc, char **argv) { - struct libcfs_ioctl_data data; - int best_dist = 0; - int best_order = 0; - lnet_nid_t best_nid = LNET_NID_ANY; - int dist; - int order; - lnet_nid_t nid; - char *nidstr; - int rc; - int i; - - if (argc < 2) { - fprintf(stderr, "usage: %s NID [NID...]\n", argv[0]); - return 0; - } - - for (i = 1; i < argc; i++) { - nidstr = argv[i]; - nid = libcfs_str2nid(nidstr); - if (nid == LNET_NID_ANY) { - fprintf(stderr, "Can't parse NID %s\n", nidstr); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_nid = nid; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_LNET_DIST, &data); - if (rc != 0) { - fprintf(stderr, "Can't get distance to %s: %s\n", - nidstr, strerror(errno)); - return -1; - } - - dist = data.ioc_u32[0]; - order = data.ioc_u32[1]; - - if (dist < 0) { - if (dist == -EHOSTUNREACH) - continue; - - fprintf(stderr, "Unexpected distance to %s: %d\n", - nidstr, dist); - return -1; - } - - if (best_nid == LNET_NID_ANY || - dist < best_dist || - (dist == best_dist && order < best_order)) { - best_dist = dist; - best_order = order; - best_nid = nid; - } - } - - if (best_nid == LNET_NID_ANY) { - fprintf(stderr, "No reachable NID\n"); - return -1; - } - - printf("%s\n", libcfs_nid2str(best_nid)); - return 0; + struct libcfs_ioctl_data data; + int best_dist = 0; + int best_order = 0; + lnet_nid_t best_nid = LNET_NID_ANY; + int dist; + int order; + lnet_nid_t nid; + char *nidstr; + int rc; + int i; + + if (argc < 2) { + fprintf(stderr, "usage: %s NID [NID...]\n", argv[0]); + return 0; + } + + for (i = 1; i < argc; i++) { + nidstr = argv[i]; + nid = libcfs_str2nid(nidstr); + if (nid == LNET_NID_ANY) { + fprintf(stderr, "Can't parse NID %s\n", nidstr); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_nid = nid; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_LNET_DIST, &data); + if (rc != 0) { + fprintf(stderr, "Can't get distance to %s: %s\n", + nidstr, strerror(errno)); + return -1; + } + + dist = data.ioc_u32[0]; + order = data.ioc_u32[1]; + + if (dist < 0) { + if (dist == -EHOSTUNREACH) + continue; + + fprintf(stderr, "Unexpected distance to %s: %d\n", + nidstr, dist); + return -1; + } + + if (best_nid == LNET_NID_ANY || + dist < best_dist || + (dist == best_dist && order < best_order)) { + best_dist = dist; + best_order = order; + best_nid = nid; + } + } + + if (best_nid == LNET_NID_ANY) { + fprintf(stderr, "No reachable NID\n"); + return -1; + } + + printf("%s\n", libcfs_nid2str(best_nid)); + return 0; } int -jt_ptl_print_interfaces (int argc, char **argv) +jt_ptl_print_interfaces(int argc, char **argv) { - struct libcfs_ioctl_data data; - char buffer[3][HOST_NAME_MAX + 1]; - int index; - int rc; - - if (!g_net_is_compatible (argv[0], SOCKLND, 0)) - return -1; - - for (index = 0;;index++) { - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_count = index; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_INTERFACE, &data); - if (rc != 0) - break; - - printf ("%s: (%s/%s) npeer %d nroute %d\n", - ptl_ipaddr_2_str(data.ioc_u32[0], buffer[2], - sizeof(buffer[2]), 1), - ptl_ipaddr_2_str(data.ioc_u32[0], buffer[0], - sizeof(buffer[0]), 0), - ptl_ipaddr_2_str(data.ioc_u32[1], buffer[1], - sizeof(buffer[1]), 0), - data.ioc_u32[2], data.ioc_u32[3]); - } - - if (index == 0) { - if (errno == ENOENT) { - printf ("\n"); - } else { - fprintf(stderr, "Error getting interfaces: %s: " - "check dmesg.\n", - strerror(errno)); - } - } - - return 0; + struct libcfs_ioctl_data data; + char buffer[3][HOST_NAME_MAX + 1]; + int index; + int rc; + + if (!g_net_is_compatible(argv[0], SOCKLND, 0)) + return -1; + + for (index = 0; ; index++) { + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_count = index; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_INTERFACE, &data); + if (rc != 0) + break; + + printf("%s: (%s/%s) npeer %d nroute %d\n", + ptl_ipaddr_2_str(data.ioc_u32[0], buffer[2], + sizeof(buffer[2]), 1), + ptl_ipaddr_2_str(data.ioc_u32[0], buffer[0], + sizeof(buffer[0]), 0), + ptl_ipaddr_2_str(data.ioc_u32[1], buffer[1], + sizeof(buffer[1]), 0), + data.ioc_u32[2], data.ioc_u32[3]); + } + + if (index == 0) { + if (errno == ENOENT) { + printf("\n"); + } else { + fprintf(stderr, + "Error getting interfaces: %s: check dmesg.\n", + strerror(errno)); + } + } + + return 0; } int -jt_ptl_add_interface (int argc, char **argv) +jt_ptl_add_interface(int argc, char **argv) { - struct libcfs_ioctl_data data; - __u32 ipaddr; - int rc; - __u32 netmask = 0xffffff00; - int i; - int count; - char *end; - - if (argc < 2 || argc > 3) { - fprintf (stderr, "usage: %s ipaddr [netmask]\n", argv[0]); - return 0; - } - - if (!g_net_is_compatible(argv[0], SOCKLND, 0)) - return -1; - - if (lnet_parse_ipaddr(&ipaddr, argv[1]) != 0) { - fprintf (stderr, "Can't parse ip: %s\n", argv[1]); - return -1; - } - - if (argc > 2 ) { - count = strtol(argv[2], &end, 0); - if (count > 0 && count < 32 && *end == 0) { - netmask = 0; - for (i = count; i > 0; i--) - netmask = netmask|(1<<(32-i)); - } else if (lnet_parse_ipquad(&netmask, argv[2]) != 0) { - fprintf (stderr, "Can't parse netmask: %s\n", argv[2]); - return -1; - } - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_u32[0] = ipaddr; - data.ioc_u32[1] = netmask; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_ADD_INTERFACE, &data); - if (rc != 0) { - fprintf (stderr, "failed to add interface: %s\n", - strerror (errno)); - return -1; - } - - return 0; + struct libcfs_ioctl_data data; + __u32 ipaddr; + int rc; + __u32 netmask = 0xffffff00; + int i; + int count; + char *end; + + if (argc < 2 || argc > 3) { + fprintf(stderr, "usage: %s ipaddr [netmask]\n", argv[0]); + return 0; + } + + if (!g_net_is_compatible(argv[0], SOCKLND, 0)) + return -1; + + if (lnet_parse_ipaddr(&ipaddr, argv[1]) != 0) { + fprintf(stderr, "Can't parse ip: %s\n", argv[1]); + return -1; + } + + if (argc > 2) { + count = strtol(argv[2], &end, 0); + if (count > 0 && count < 32 && *end == 0) { + netmask = 0; + for (i = count; i > 0; i--) + netmask = netmask | (1 << (32 - i)); + } else if (lnet_parse_ipquad(&netmask, argv[2]) != 0) { + fprintf(stderr, "Can't parse netmask: %s\n", argv[2]); + return -1; + } + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_u32[0] = ipaddr; + data.ioc_u32[1] = netmask; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_ADD_INTERFACE, &data); + if (rc != 0) { + fprintf(stderr, "failed to add interface: %s\n", + strerror(errno)); + return -1; + } + + return 0; } int -jt_ptl_del_interface (int argc, char **argv) +jt_ptl_del_interface(int argc, char **argv) { - struct libcfs_ioctl_data data; - int rc; - __u32 ipaddr = 0; - - if (argc > 2) { - fprintf (stderr, "usage: %s [ipaddr]\n", argv[0]); - return 0; - } - - if (!g_net_is_compatible(argv[0], SOCKLND, 0)) - return -1; - - if (argc == 2 && - lnet_parse_ipaddr(&ipaddr, argv[1]) != 0) { - fprintf (stderr, "Can't parse ip: %s\n", argv[1]); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_u32[0] = ipaddr; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_DEL_INTERFACE, &data); - if (rc != 0) { - fprintf (stderr, "failed to delete interface: %s\n", - strerror (errno)); - return -1; - } - - return 0; + struct libcfs_ioctl_data data; + int rc; + __u32 ipaddr = 0; + + if (argc > 2) { + fprintf(stderr, "usage: %s [ipaddr]\n", argv[0]); + return 0; + } + + if (!g_net_is_compatible(argv[0], SOCKLND, 0)) + return -1; + + if (argc == 2 && + lnet_parse_ipaddr(&ipaddr, argv[1]) != 0) { + fprintf(stderr, "Can't parse ip: %s\n", argv[1]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_u32[0] = ipaddr; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_DEL_INTERFACE, &data); + if (rc != 0) { + fprintf(stderr, "failed to delete interface: %s\n", + strerror(errno)); + return -1; + } + + return 0; } int -jt_ptl_print_peers (int argc, char **argv) +jt_ptl_print_peers(int argc, char **argv) { struct libcfs_ioctl_data data; - struct lnet_process_id id; - char buffer[2][HOST_NAME_MAX + 1]; - int index; - int rc; + struct lnet_process_id id; + char buffer[2][HOST_NAME_MAX + 1]; + int index; + int rc; if (!g_net_is_compatible(argv[0], SOCKLND, O2IBLND, GNILND, PTL4LND, 0)) return -1; - for (index = 0;;index++) { - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_count = index; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_PEER, &data); - if (rc != 0) - break; - - if (g_net_is_compatible(NULL, SOCKLND, 0)) { - id.nid = data.ioc_nid; - id.pid = data.ioc_u32[4]; - printf ("%-20s [%d]%s->%s:%d #%d\n", - libcfs_id2str(id), - data.ioc_count, /* persistence */ - /* my ip */ - ptl_ipaddr_2_str(data.ioc_u32[2], buffer[0], - sizeof(buffer[0]), 1), - /* peer ip */ - ptl_ipaddr_2_str(data.ioc_u32[0], buffer[1], - sizeof(buffer[1]), 1), - data.ioc_u32[1], /* peer port */ - data.ioc_u32[3]); /* conn_count */ + for (index = 0; ; index++) { + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_count = index; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_PEER, &data); + if (rc != 0) + break; + + if (g_net_is_compatible(NULL, SOCKLND, 0)) { + id.nid = data.ioc_nid; + id.pid = data.ioc_u32[4]; + printf("%-20s [%d]%s->%s:%d #%d\n", + libcfs_id2str(id), + data.ioc_count, /* persistence */ + /* my ip */ + ptl_ipaddr_2_str(data.ioc_u32[2], buffer[0], + sizeof(buffer[0]), 1), + /* peer ip */ + ptl_ipaddr_2_str(data.ioc_u32[0], buffer[1], + sizeof(buffer[1]), 1), + data.ioc_u32[1], /* peer port */ + data.ioc_u32[3]); /* conn_count */ } else if (g_net_is_compatible(NULL, GNILND, 0)) { int disconn = data.ioc_flags >> 16; char *state; @@ -641,23 +637,24 @@ jt_ptl_print_peers (int argc, char **argv) (uintmax_t)data.ioc_u64[0], /* peerstamp */ data.ioc_u32[2], data.ioc_u32[3], /* tx and rx seq */ /* fmaq, nfma, nrdma */ - data.ioc_u32[0], data.ioc_u32[1], data.ioc_u32[4]); - } else { - printf ("%-20s [%d]\n", - libcfs_nid2str(data.ioc_nid), data.ioc_count); - } - } - - if (index == 0) { - if (errno == ENOENT) { - printf ("\n"); - } else { - fprintf(stderr, "Error getting peer list: %s: " - "check dmesg.\n", - strerror(errno)); - } - } - return 0; + data.ioc_u32[0], data.ioc_u32[1], + data.ioc_u32[4]); + } else { + printf("%-20s [%d]\n", + libcfs_nid2str(data.ioc_nid), data.ioc_count); + } + } + + if (index == 0) { + if (errno == ENOENT) { + printf("\n"); + } else { + fprintf(stderr, + "Error getting peer list: %s: check dmesg.\n", + strerror(errno)); + } + } + return 0; } int jt_ptl_add_peer(int argc, char **argv) @@ -677,113 +674,108 @@ int jt_ptl_add_peer(int argc, char **argv) return 0; } - nid = libcfs_str2nid(argv[1]); - if (nid == LNET_NID_ANY) { - fprintf (stderr, "Can't parse NID: %s\n", argv[1]); - return -1; - } - - if (lnet_parse_ipaddr (&ip, argv[2]) != 0) { - fprintf (stderr, "Can't parse ip addr: %s\n", argv[2]); - return -1; - } - - if (lnet_parse_port (&port, argv[3]) != 0) { - fprintf (stderr, "Can't parse port: %s\n", argv[3]); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_nid = nid; - data.ioc_u32[0] = ip; - data.ioc_u32[1] = port; - - rc = l_ioctl (LNET_DEV_ID, IOC_LIBCFS_ADD_PEER, &data); - if (rc != 0) { - fprintf (stderr, "failed to add peer: %s\n", - strerror (errno)); - return -1; - } - - return 0; + nid = libcfs_str2nid(argv[1]); + if (nid == LNET_NID_ANY) { + fprintf(stderr, "Can't parse NID: %s\n", argv[1]); + return -1; + } + + if (lnet_parse_ipaddr(&ip, argv[2]) != 0) { + fprintf(stderr, "Can't parse ip addr: %s\n", argv[2]); + return -1; + } + + if (lnet_parse_port(&port, argv[3]) != 0) { + fprintf(stderr, "Can't parse port: %s\n", argv[3]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_nid = nid; + data.ioc_u32[0] = ip; + data.ioc_u32[1] = port; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_ADD_PEER, &data); + if (rc != 0) { + fprintf(stderr, "failed to add peer: %s\n", + strerror(errno)); + return -1; + } + + return 0; } int -jt_ptl_del_peer (int argc, char **argv) +jt_ptl_del_peer(int argc, char **argv) { struct libcfs_ioctl_data data; - lnet_nid_t nid = LNET_NID_ANY; - lnet_pid_t pid = LNET_PID_ANY; - __u32 ip = 0; - int rc; + lnet_nid_t nid = LNET_NID_ANY; + lnet_pid_t pid = LNET_PID_ANY; + __u32 ip = 0; + int rc; if (!g_net_is_compatible(argv[0], SOCKLND, O2IBLND, GNILND, PTL4LND, 0)) return -1; - if (g_net_is_compatible(NULL, SOCKLND, 0)) { - if (argc > 3) { - fprintf (stderr, "usage: %s [nid] [ipaddr]\n", - argv[0]); - return 0; - } - } else if (argc > 2) { - fprintf (stderr, "usage: %s [nid]\n", argv[0]); - return 0; - } - - if (argc > 1 && - !libcfs_str2anynid(&nid, argv[1])) { - fprintf (stderr, "Can't parse nid: %s\n", argv[1]); - return -1; - } - - if (g_net_is_compatible(NULL, SOCKLND, 0)) { - if (argc > 2 && - lnet_parse_ipaddr (&ip, argv[2]) != 0) { - fprintf (stderr, "Can't parse ip addr: %s\n", - argv[2]); - return -1; - } - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_nid = nid; - data.ioc_u32[0] = ip; - data.ioc_u32[1] = pid; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_DEL_PEER, &data); - if (rc != 0) { - fprintf (stderr, "failed to remove peer: %s\n", - strerror (errno)); - return -1; - } - - return 0; + if (g_net_is_compatible(NULL, SOCKLND, 0)) { + if (argc > 3) { + fprintf(stderr, "usage: %s [nid] [ipaddr]\n", argv[0]); + return 0; + } + } else if (argc > 2) { + fprintf(stderr, "usage: %s [nid]\n", argv[0]); + return 0; + } + + if (argc > 1 && !libcfs_str2anynid(&nid, argv[1])) { + fprintf(stderr, "Can't parse nid: %s\n", argv[1]); + return -1; + } + + if (g_net_is_compatible(NULL, SOCKLND, 0)) { + if (argc > 2 && lnet_parse_ipaddr(&ip, argv[2]) != 0) { + fprintf(stderr, "Can't parse ip addr: %s\n", argv[2]); + return -1; + } + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_nid = nid; + data.ioc_u32[0] = ip; + data.ioc_u32[1] = pid; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_DEL_PEER, &data); + if (rc != 0) { + fprintf(stderr, "failed to remove peer: %s\n", strerror(errno)); + return -1; + } + + return 0; } int -jt_ptl_print_connections (int argc, char **argv) +jt_ptl_print_connections(int argc, char **argv) { - struct libcfs_ioctl_data data; - struct lnet_process_id id; - char buffer[2][HOST_NAME_MAX + 1]; - int index; - int rc; + struct libcfs_ioctl_data data; + struct lnet_process_id id; + char buffer[2][HOST_NAME_MAX + 1]; + int index; + int rc; if (!g_net_is_compatible(argv[0], SOCKLND, O2IBLND, GNILND, 0)) - return -1; + return -1; - for (index = 0; ; index++) { - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_count = index; + for (index = 0; ; index++) { + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_count = index; - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_CONN, &data); - if (rc != 0) - break; + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_GET_CONN, &data); + if (rc != 0) + break; if (g_net_is_compatible(NULL, SOCKLND, 0)) { id.nid = data.ioc_nid; @@ -818,140 +810,137 @@ jt_ptl_print_connections (int argc, char **argv) } } - if (index == 0) { - if (errno == ENOENT) { - printf ("\n"); - } else { - fprintf(stderr, "Error getting connection list: %s: " - "check dmesg.\n", - strerror(errno)); - } - } - return 0; + if (index == 0) { + if (errno == ENOENT) { + printf("\n"); + } else { + fprintf(stderr, + "Error getting connection list: %s: check dmesg.\n", + strerror(errno)); + } + } + return 0; } int jt_ptl_disconnect(int argc, char **argv) { - struct libcfs_ioctl_data data; - lnet_nid_t nid = LNET_NID_ANY; - __u32 ipaddr = 0; - int rc; + struct libcfs_ioctl_data data; + lnet_nid_t nid = LNET_NID_ANY; + __u32 ipaddr = 0; + int rc; - if (argc > 3) { - fprintf(stderr, "usage: %s [nid] [ipaddr]\n", argv[0]); - return 0; - } + if (argc > 3) { + fprintf(stderr, "usage: %s [nid] [ipaddr]\n", argv[0]); + return 0; + } if (!g_net_is_compatible(NULL, SOCKLND, O2IBLND, GNILND, 0)) - return 0; - - if (argc >= 2 && - !libcfs_str2anynid(&nid, argv[1])) { - fprintf (stderr, "Can't parse nid %s\n", argv[1]); - return -1; - } - - if (g_net_is_compatible (NULL, SOCKLND, 0) && - argc >= 3 && - lnet_parse_ipaddr (&ipaddr, argv[2]) != 0) { - fprintf (stderr, "Can't parse ip addr %s\n", argv[2]); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_nid = nid; - data.ioc_u32[0] = ipaddr; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_CLOSE_CONNECTION, &data); - if (rc != 0) { - fprintf(stderr, "failed to remove connection: %s\n", - strerror(errno)); - return -1; - } - - return 0; + return 0; + + if (argc >= 2 && !libcfs_str2anynid(&nid, argv[1])) { + fprintf(stderr, "Can't parse nid %s\n", argv[1]); + return -1; + } + + if (g_net_is_compatible(NULL, SOCKLND, 0) && argc >= 3 && + lnet_parse_ipaddr(&ipaddr, argv[2]) != 0) { + fprintf(stderr, "Can't parse ip addr %s\n", argv[2]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_nid = nid; + data.ioc_u32[0] = ipaddr; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_CLOSE_CONNECTION, &data); + if (rc != 0) { + fprintf(stderr, "failed to remove connection: %s\n", + strerror(errno)); + return -1; + } + + return 0; } -int jt_ptl_push_connection (int argc, char **argv) +int jt_ptl_push_connection(int argc, char **argv) { - struct libcfs_ioctl_data data; - int rc; - lnet_nid_t nid = LNET_NID_ANY; - - if (argc > 2) { - fprintf(stderr, "usage: %s [nid]\n", argv[0]); - return 0; - } - - if (!g_net_is_compatible (argv[0], SOCKLND, GNILND, 0)) - return -1; - - if (argc > 1 && - !libcfs_str2anynid(&nid, argv[1])) { - fprintf(stderr, "Can't parse nid: %s\n", argv[1]); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = g_net; - data.ioc_nid = nid; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_PUSH_CONNECTION, &data); - if (rc != 0) { - fprintf(stderr, "failed to push connection: %s\n", - strerror(errno)); - return -1; - } - - return 0; + struct libcfs_ioctl_data data; + int rc; + lnet_nid_t nid = LNET_NID_ANY; + + if (argc > 2) { + fprintf(stderr, "usage: %s [nid]\n", argv[0]); + return 0; + } + + if (!g_net_is_compatible(argv[0], SOCKLND, GNILND, 0)) + return -1; + + if (argc > 1 && !libcfs_str2anynid(&nid, argv[1])) { + fprintf(stderr, "Can't parse nid: %s\n", argv[1]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = g_net; + data.ioc_nid = nid; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_PUSH_CONNECTION, &data); + if (rc != 0) { + fprintf(stderr, "failed to push connection: %s\n", + strerror(errno)); + return -1; + } + + return 0; } int jt_ptl_ping(int argc, char **argv) { - int rc; - int timeout; + int rc; + int timeout; struct lnet_process_id id; struct lnet_process_id ids[16]; - int maxids = sizeof(ids)/sizeof(ids[0]); - struct libcfs_ioctl_data data; - char *sep; - int i; - - if (argc < 2) { - fprintf(stderr, "usage: %s id [timeout (secs)]\n", argv[0]); - return 0; - } - - sep = strchr(argv[1], '-'); - if (sep == NULL) { - rc = lnet_parse_nid(argv[1], &id); - if (rc != 0) - return -1; - } else { - char *end; - - if (argv[1][0] == 'u' || - argv[1][0] == 'U') - id.pid = strtoul(&argv[1][1], &end, 0) | LNET_PID_USERFLAG; - else - id.pid = strtoul(argv[1], &end, 0); - - 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 (id.nid == LNET_NID_ANY) { - fprintf(stderr, - "Can't parse process id \"%s\"\n", - argv[1]); - return -1; - } - } - } + int maxids = sizeof(ids) / sizeof(ids[0]); + struct libcfs_ioctl_data data; + char *sep; + int i; + + if (argc < 2) { + fprintf(stderr, "usage: %s id [timeout (secs)]\n", argv[0]); + return 0; + } + + sep = strchr(argv[1], '-'); + if (!sep) { + rc = lnet_parse_nid(argv[1], &id); + if (rc != 0) + return -1; + } else { + char *end; + + if (argv[1][0] == 'u' || argv[1][0] == 'U') + id.pid = strtoul(&argv[1][1], &end, 0) | + LNET_PID_USERFLAG; + else + id.pid = strtoul(argv[1], &end, 0); + + 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 (id.nid == LNET_NID_ANY) { + fprintf(stderr, + "Can't parse process id \"%s\"\n", + argv[1]); + return -1; + } + } + } if (argc > 2) { timeout = 1000 * atol(argv[2]); @@ -960,115 +949,116 @@ int jt_ptl_ping(int argc, char **argv) argv[2]); return -1; } - } else - timeout = 1000; /* default 1 second timeout */ - - LIBCFS_IOC_INIT (data); - data.ioc_nid = id.nid; - data.ioc_u32[0] = id.pid; - data.ioc_u32[1] = timeout; - data.ioc_plen1 = sizeof(ids); - data.ioc_pbuf1 = (char *)ids; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_PING, &data); - if (rc != 0) { - fprintf(stderr, "failed to ping %s: %s\n", - id.pid == LNET_PID_ANY ? - libcfs_nid2str(id.nid) : libcfs_id2str(id), - strerror(errno)); - return -1; - } - - for (i = 0; i < data.ioc_count && i < maxids; i++) - printf("%s\n", libcfs_id2str(ids[i])); - - if (data.ioc_count > maxids) - printf("%d out of %d ids listed\n", maxids, data.ioc_count); - - return 0; + } else { + timeout = 1000; /* default 1 second timeout */ + } + + LIBCFS_IOC_INIT(data); + data.ioc_nid = id.nid; + data.ioc_u32[0] = id.pid; + data.ioc_u32[1] = timeout; + data.ioc_plen1 = sizeof(ids); + data.ioc_pbuf1 = (char *)ids; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_PING, &data); + if (rc != 0) { + fprintf(stderr, "failed to ping %s: %s\n", + id.pid == LNET_PID_ANY ? + libcfs_nid2str(id.nid) : libcfs_id2str(id), + strerror(errno)); + return -1; + } + + for (i = 0; i < data.ioc_count && i < maxids; i++) + printf("%s\n", libcfs_id2str(ids[i])); + + if (data.ioc_count > maxids) + printf("%d out of %d ids listed\n", maxids, data.ioc_count); + + return 0; } int jt_ptl_mynid(int argc, char **argv) { - struct libcfs_ioctl_data data; - lnet_nid_t nid; - int rc; - - if (argc != 2) { - fprintf(stderr, "usage: %s NID\n", argv[0]); - return 0; - } - - nid = libcfs_str2nid(argv[1]); - if (nid == LNET_NID_ANY) { - fprintf(stderr, "Can't parse NID '%s'\n", argv[1]); - return -1; - } - - LIBCFS_IOC_INIT(data); - data.ioc_net = LNET_NIDNET(nid); - data.ioc_nid = nid; - - rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_REGISTER_MYNID, &data); - if (rc < 0) - fprintf(stderr, "setting my NID failed: %s\n", - strerror(errno)); - else - printf("registered my nid %s\n", libcfs_nid2str(nid)); - - return 0; + struct libcfs_ioctl_data data; + lnet_nid_t nid; + int rc; + + if (argc != 2) { + fprintf(stderr, "usage: %s NID\n", argv[0]); + return 0; + } + + nid = libcfs_str2nid(argv[1]); + if (nid == LNET_NID_ANY) { + fprintf(stderr, "Can't parse NID '%s'\n", argv[1]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_net = LNET_NIDNET(nid); + data.ioc_nid = nid; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_REGISTER_MYNID, &data); + if (rc < 0) + fprintf(stderr, "setting my NID failed: %s\n", + strerror(errno)); + else + printf("registered my nid %s\n", libcfs_nid2str(nid)); + + return 0; } int -jt_ptl_fail_nid (int argc, char **argv) +jt_ptl_fail_nid(int argc, char **argv) { - int rc; - lnet_nid_t nid; - int threshold; - struct libcfs_ioctl_data data; - - if (argc < 2 || argc > 3) - { - fprintf (stderr, "usage: %s nid|\"*\" [count (0 == mend)]\n", argv[0]); - return (0); - } - - if (!libcfs_str2anynid(&nid, argv[1])) - { - fprintf (stderr, "Can't parse nid \"%s\"\n", argv[1]); - return (-1); - } - - if (argc < 3) { - threshold = LNET_MD_THRESH_INF; + int rc; + lnet_nid_t nid; + int threshold; + struct libcfs_ioctl_data data; + + if (argc < 2 || argc > 3) { + fprintf(stderr, "usage: %s nid|\"*\" [count (0 == mend)]\n", + argv[0]); + return 0; + } + + if (!libcfs_str2anynid(&nid, argv[1])) { + fprintf(stderr, "Can't parse nid \"%s\"\n", argv[1]); + return -1; + } + + if (argc < 3) { + threshold = LNET_MD_THRESH_INF; } else if (sscanf(argv[2], "%i", &threshold) != 1) { - fprintf (stderr, "Can't parse count \"%s\"\n", argv[2]); - return (-1); - } - - LIBCFS_IOC_INIT (data); - data.ioc_nid = nid; - data.ioc_count = threshold; - - rc = l_ioctl (LNET_DEV_ID, IOC_LIBCFS_FAIL_NID, &data); - if (rc < 0) - fprintf (stderr, "IOC_LIBCFS_FAIL_NID failed: %s\n", - strerror (errno)); - else - printf ("%s %s\n", threshold == 0 ? "Unfailing" : "Failing", argv[1]); - - return (0); + fprintf(stderr, "Can't parse count \"%s\"\n", argv[2]); + return -1; + } + + LIBCFS_IOC_INIT(data); + data.ioc_nid = nid; + data.ioc_count = threshold; + + rc = l_ioctl(LNET_DEV_ID, IOC_LIBCFS_FAIL_NID, &data); + if (rc < 0) + fprintf(stderr, "IOC_LIBCFS_FAIL_NID failed: %s\n", + strerror(errno)); + else + printf("%s %s\n", + threshold == 0 ? "Unfailing" : "Failing", argv[1]); + + return 0; } int -jt_ptl_add_route (int argc, char **argv) +jt_ptl_add_route(int argc, char **argv) { struct lnet_ioctl_config_data data; - lnet_nid_t gateway_nid; - __u32 hops = LNET_UNDEFINED_HOPS; - unsigned int priority = 0; - char *end; - int rc; + lnet_nid_t gateway_nid; + __u32 hops = LNET_UNDEFINED_HOPS; + unsigned int priority = 0; + char *end; + int rc; if (argc < 2 || argc > 4) { fprintf(stderr, "usage: %s gateway [hopcount [priority]]\n", @@ -1088,14 +1078,14 @@ jt_ptl_add_route (int argc, char **argv) if (argc > 2) { hops = strtol(argv[2], &end, 0); if (hops == 0 || hops >= 256 || - (end != NULL && *end != 0)) { + (end && *end != 0)) { fprintf(stderr, "Can't parse hopcount \"%s\"\n", argv[2]); return -1; } if (argc == 4) { priority = strtoul(argv[3], &end, 0); - if (end != NULL && *end != 0) { + if (end && *end != 0) { fprintf(stderr, "Can't parse priority \"%s\"\n", argv[3]); @@ -1121,11 +1111,11 @@ jt_ptl_add_route (int argc, char **argv) } int -jt_ptl_del_route (int argc, char **argv) +jt_ptl_del_route(int argc, char **argv) { struct lnet_ioctl_config_data data; - lnet_nid_t nid; - int rc; + lnet_nid_t nid; + int rc; if (argc != 2) { fprintf(stderr, "usage: %s gatewayNID\n", argv[0]); @@ -1133,8 +1123,7 @@ jt_ptl_del_route (int argc, char **argv) } if (libcfs_str2anynid(&nid, argv[1]) == 0) { - fprintf(stderr, "Can't parse gateway NID " - "\"%s\"\n", argv[1]); + fprintf(stderr, "Can't parse gateway NID \"%s\"\n", argv[1]); return -1; } @@ -1153,75 +1142,74 @@ jt_ptl_del_route (int argc, char **argv) } int -jt_ptl_notify_router (int argc, char **argv) +jt_ptl_notify_router(int argc, char **argv) { - struct libcfs_ioctl_data data; - int enable; - lnet_nid_t nid; - int rc; - struct timeval now; - time_t when; - - if (argc < 3) - { - fprintf (stderr, "usage: %s targetNID [