]> git.openfabrics.org - ~shefty/ibacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Thu, 3 Nov 2011 18:25:03 +0000 (11:25 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 3 Nov 2011 18:25:03 +0000 (11:25 -0700)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index e54027d9478255acf1f1edc4abcaf514c02e3b90..e3e72367d1847d5aa9f3b2b83297af0058462d60 100644 (file)
--- a/meta
+++ b/meta
@@ -1,8 +1,9 @@
 Version: 1
-Previous: 852f565ab52b475384471480e9fe5bae06fb4cb0
-Head: f88bef4e09db011327fef0c7e585370c185fc53c
+Previous: 998153a72e7f7d23863a783585c7d1f4976c923d
+Head: 6d698599b76c3be2977aec7f2c9eee193cf339b6
 Applied:
   af_ib: f88bef4e09db011327fef0c7e585370c185fc53c
+  refresh-temp: 6d698599b76c3be2977aec7f2c9eee193cf339b6
 Unapplied:
   name2ip: 8e00708e882239292492e13aa51c82042255933c
   addr_size: 8de02c47fbf595132105a7050ad6f755f49f9a7a
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..1318dc1
--- /dev/null
@@ -0,0 +1,45 @@
+Bottom: 42e4729a57fa30e42770d8787e4b6b02c7bf2204
+Top:    9c8df4b2d96ca4a90a0a18ba88dbd97646f94a82
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2011-11-03 11:25:03 -0700
+
+Refresh of af_ib
+
+---
+
+diff --git a/src/acm.c b/src/acm.c
+index d47f9d6..4cf20ed 100644
+--- a/src/acm.c
++++ b/src/acm.c
+@@ -1745,10 +1745,29 @@ static void acm_svr_accept(void)
+ static int
+ acm_is_path_from_port(struct acm_port *port, struct ibv_path_record *path)
+ {
+-      if (ib_any_gid(&path->sgid)) {
++      union ibv_gid gid;
++      uint8_t i;
++
++      if (!ib_any_gid(&path->sgid)) {
++              return (acm_gid_index(port, &path->sgid) < port->gid_cnt);
++      }
++
++      if (path->slid) {
+               return (port->lid == (ntohs(path->slid) & port->lid_mask));
+       }
+-      return (acm_gid_index(port, &path->sgid) < port->gid_cnt);
++
++      if (acm_gid_index(port, &path->dgid) < port->gid_cnt) {
++              return 1;
++      }
++
++      for (i = 0; i < port->gid_cnt; i++) {
++              ibv_query_gid(port->dev->verbs, port->port_num, i, &gid);
++              if (gid.global.subnet_prefix == path->dgid.global.subnet_prefix)) {
++                      return 1;
++              }
++      }
++
++      return 0;
+ }
+ static struct acm_ep *