]> git.openfabrics.org - ~shefty/ibacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Wed, 29 Jun 2011 00:32:09 +0000 (17:32 -0700)
committerSean Hefty <sean.hefty@intel.com>
Wed, 29 Jun 2011 00:32:09 +0000 (17:32 -0700)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index 7e7a801c28f2d0d5242f3c0dbba7e3d218293b97..cc48f85e5ca6eb27cdc475b1616c1b70198028ec 100644 (file)
--- a/meta
+++ b/meta
@@ -1,10 +1,11 @@
 Version: 1
-Previous: dc9fb9df68a4f2cc7eb5324630a251401c9b79f9
-Head: 11672c1f019a280eb1bf5835da2e4b72788cd548
+Previous: eb41e78ffc3150b3636003b5c9431c0e1a2c7ff1
+Head: 67120d2b6a6d83e598a825ceb4ffafb3632cad0e
 Applied:
   deam: 15fcbd5198ba0c15ab4e8fddcdba32c8ef45faf8
   braces: 5fb48c1b8d722b60332f83ca4c8b92b2a7e456a6
   counters: 11672c1f019a280eb1bf5835da2e4b72788cd548
+  refresh-temp: 67120d2b6a6d83e598a825ceb4ffafb3632cad0e
 Unapplied:
   acm1.0.5: 1b225173756cfcec4d81d26b1160ebae7644261b
   name2ip: 8e00708e882239292492e13aa51c82042255933c
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..bc30889
--- /dev/null
@@ -0,0 +1,191 @@
+Bottom: 3550bace98f1e4ab54dfcdc255f2dd8774f3f09b
+Top:    53f19f53102c76709faccdc0cba71ef7b3a96c5e
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2011-06-28 17:32:09 -0700
+
+Refresh of counters
+
+---
+
+diff --git a/src/acm.c b/src/acm.c
+index d1cdb8b..1f9d2e8 100644
+--- a/src/acm.c
++++ b/src/acm.c
+@@ -1010,9 +1010,9 @@ acm_client_resolve_resp(struct acm_client *client, struct acm_resolve_msg *req_m
+       memset(&msg, 0, sizeof msg);
+       if (status == ACM_STATUS_ENODATA)
+-              atomic_inc(counters[ACM_CNTR_NODATA]);
++              atomic_inc(&counter[ACM_CNTR_NODATA]);
+       else if (status)
+-              atomic_inc(counters[ACM_CNTR_ERROR]);
++              atomic_inc(&counter[ACM_CNTR_ERROR]);
+       lock_acquire(&client->lock);
+       if (client->sock == INVALID_SOCKET) {
+@@ -2239,7 +2239,7 @@ static int acm_svr_resolve(struct acm_client *client, struct acm_resolve_msg *ms
+ static int acm_svr_perf_query(struct acm_client *client, struct acm_perf_msg *msg)
+ {
+-      int i;
++      int ret, i;
+       acm_log(2, "client %d\n", client->index);
+       msg->hdr.opcode |= ACM_OP_ACK;
+@@ -2256,14 +2256,14 @@ static int acm_svr_perf_query(struct acm_client *client, struct acm_perf_msg *ms
+       if (ret != msg->hdr.length)
+               acm_log(0, "ERROR - failed to send response\n");
+       else
+-              ret = 0
++              ret = 0;
++
+       return ret;
+ }
+ static void acm_svr_receive(struct acm_client *client)
+ {
+       struct acm_msg msg;
+-      struct acm_resolve_msg *resolve_msg = (struct acm_resolve_msg *) &msg;
+       int ret;
+       acm_log(2, "client %d\n", client->index);
+@@ -2606,7 +2606,6 @@ static struct acm_ep *
+ acm_alloc_ep(struct acm_port *port, uint16_t pkey, uint16_t pkey_index)
+ {
+       struct acm_ep *ep;
+-      int i;
+       acm_log(1, "\n");
+       ep = calloc(1, sizeof *ep);
+diff --git a/src/acme.c b/src/acme.c
+index 3be1f86..39ce2dd 100644
+--- a/src/acme.c
++++ b/src/acme.c
+@@ -583,7 +583,9 @@ static char *get_dest(char *arg, char *format)
+ static int resolve(char *program, char *dest_arg)
+ {
+       char **dest_list;
++      struct ibv_path_record path;
+       int ret, i = 0;
++      char dest_type;
+       ret = ib_acm_connect("127.0.0.1");
+       if (ret) {
+@@ -633,10 +635,10 @@ static int resolve(char *program, char *dest_arg)
+       return ret;
+ }
+-static int perf_query(char *program, char *dest_arg)
++static int query_perf(char *program, char *dest_arg)
+ {
+       char **dest_list;
+-      int ret, cnt, i, d = 0;
++      int ret, cnt, i, d;
+       uint64_t *counters;
+       dest_list = parse(dest_arg, NULL);
+@@ -646,14 +648,13 @@ static int perf_query(char *program, char *dest_arg)
+       }
+       printf("Destination,Error Count,Resolve Count,No Data,Addr Cache Count,"
+-             "Addr Query Count,Route Cache Count,Route Query Count\n")
+-      for (dest_addr = get_dest(dest_list[d], &dest_type); dest_addr;
+-           dest_addr = get_dest(dest_list[++d], &dest_type)) {
++             "Addr Query Count,Route Cache Count,Route Query Count\n");
++      for (d = 0; dest_list[d]; d++) {
+-              printf("%s,", dest_addr);
+-              ret = ib_acm_connect(dest_addr);
++              printf("%s,", dest_list[d]);
++              ret = ib_acm_connect(dest_list[d]);
+               if (ret) {
+-                      printf("Unable to contact ib_acm service\n);
++                      printf("Unable to contact ib_acm service\n");
+                       continue;
+               }
+@@ -662,7 +663,7 @@ static int perf_query(char *program, char *dest_arg)
+                       printf("Failed to query perf data %s\n", strerror(errno));
+               } else {
+                       for (i = 0; i < cnt; i++)
+-                              printf("%ull,", counters[i]);
++                              printf("%llu,", counters[i]);
+                       printf("\n");
+               }
+@@ -746,7 +747,7 @@ int CDECL_FUNC main(int argc, char **argv)
+       if (dest_arg) {
+               if (perf_query)
+-                      ret = perf_query(argv[0], dest_arg);
++                      ret = query_perf(argv[0], dest_arg);
+               else
+                       ret = resolve(argv[0], dest_arg);
+       }
+diff --git a/src/libacm.c b/src/libacm.c
+index 4491506..eb52a3c 100644
+--- a/src/libacm.c
++++ b/src/libacm.c
+@@ -36,6 +36,8 @@
+ #include <infiniband/acm.h>
+ #include <stdio.h>
+ #include <errno.h>
++#include <netdb.h>
++#include <arpa/inet.h>
+ struct acm_port {
+       uint8_t           port_num;
+@@ -66,31 +68,6 @@ static void acm_set_server_port(void)
+       }
+ }
+-static char *get_dest(char *arg)
+-{
+-      static char addr[64];
+-      struct addrinfo hint, *res;
+-      const char *ai;
+-      int ret;
+-
+-      memset(&hint, 0, sizeof hint);
+-      hint.ai_protocol = IPPROTO_TCP;
+-      ret = getaddrinfo(arg, NULL, &hint, &res);
+-      if (ret) {
+-              *format = 'l';
+-              return arg;
+-      }
+-
+-      if (res->ai_family == AF_INET) {
+-              ai = inet_ntop(AF_INET, &((struct sockaddr_in *) res->ai_addr)->sin_addr,
+-                              addr, sizeof addr);
+-      } else {
+-              ai = inet_ntop(AF_INET6, &((struct sockaddr_in6 *) res->ai_addr)->sin6_addr,
+-                              addr, sizeof addr);
+-      }
+-      freeaddrinfo(res);
+-}
+-
+ int ib_acm_connect(char *dest)
+ {
+       struct addrinfo hint, *res;
+@@ -337,11 +314,11 @@ out:
+       return ret;
+ }
+-static int ib_acm_query_perf(uint64_t **counters, int *count)
++int ib_acm_query_perf(uint64_t **counters, int *count)
+ {
+       struct acm_msg msg;
+       struct acm_perf_msg *perf_msg = (struct acm_perf_msg *) &msg;
+-      int ret, cnt = 0;
++      int ret;
+       lock_acquire(&lock);
+       memset(&msg, 0, sizeof msg);
+@@ -369,6 +346,7 @@ static int ib_acm_query_perf(uint64_t **counters, int *count)
+       }
+       memcpy(*counters, perf_msg->data, msg.hdr.data[0]);
++      *count = msg.hdr.data[0];
+       ret = 0;
+ out:
+       lock_release(&lock);