]> git.openfabrics.org - ~shefty/ibacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Fri, 17 Dec 2010 16:03:14 +0000 (08:03 -0800)
committerSean Hefty <sean.hefty@intel.com>
Fri, 17 Dec 2010 16:03:14 +0000 (08:03 -0800)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index 9ea4fb58727581ede8bd77f2a0703cd1f73c13bc..ce0d1ab0cad1bd7368cfe8737baf117a8ba64b52 100644 (file)
--- a/meta
+++ b/meta
@@ -1,8 +1,9 @@
 Version: 1
-Previous: a8708b8bb159db319c2842d725b822edfecf7896
-Head: a5f2345a60570ce44882ab083f5dcfc6fc60792e
+Previous: a4ab535d5fef439075e49046daace74b7f2385d4
+Head: 166ec53f82766d2eaaa7a14b848ea4fc08ad0fc4
 Applied:
   lmc: b355854c79a1e446e87684a41663ad5aae258b73
   lid: a5f2345a60570ce44882ab083f5dcfc6fc60792e
+  refresh-temp: 166ec53f82766d2eaaa7a14b848ea4fc08ad0fc4
 Unapplied:
 Hidden:
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..d5be48e
--- /dev/null
@@ -0,0 +1,43 @@
+Bottom: a15744a4e313a55d0b2bac2e14be1aed79ec75f5
+Top:    70266ac3fc8299998c668dc5b15ed7ad85d3fc51
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2010-12-17 08:03:14 -0800
+
+Refresh of lid
+
+---
+
+diff --git a/src/acm.c b/src/acm.c
+index 5da4044..b367b70 100644
+--- a/src/acm.c
++++ b/src/acm.c
+@@ -2103,13 +2103,18 @@ put:
+       return ret;
+ }
++/*
++ * The message buffer contains extra address data buffers.  We extract the
++ * destination address from the path record into an extra buffer, so we can
++ * lookup the destination by either LID or GID.
++ */
+ static int
+ acm_svr_resolve_path(struct acm_client *client, struct acm_resolve_msg *msg)
+ {
+       struct acm_ep *ep;
+       struct acm_dest *dest;
+       struct ibv_path_record *path;
+-      uint8_t addr[ACM_MAX_ADDRESS];
++      uint8_t *addr;
+       uint8_t status;
+       int ret;
+@@ -2134,7 +2139,8 @@ acm_svr_resolve_path(struct acm_client *client, struct acm_resolve_msg *msg)
+               return acm_client_resolve_resp(client, msg, NULL, ACM_STATUS_ESRCADDR);
+       }
+-      memset(addr, 0, sizeof addr);
++      addr = &msg->data[1].info.addr;
++      memset(addr, 0, ACM_MAX_ADDRESS);
+       if (path->dlid) {
+               * ((uint16_t *) addr) = path->dlid;
+               dest = acm_acquire_dest(ep, ACM_ADDRESS_LID, addr);