]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Sat, 2 Feb 2013 07:08:28 +0000 (23:08 -0800)
committerSean Hefty <sean.hefty@intel.com>
Sat, 2 Feb 2013 07:08:28 +0000 (23:08 -0800)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index cf644611ebc0a020612b6d7ba0538e984933a19a..df8ef46df2e4d422b873d11af2bcc3194cec9579 100644 (file)
--- a/meta
+++ b/meta
@@ -1,8 +1,9 @@
 Version: 1
-Previous: 0c979d1495b3cc56c23ab4f750cdf09736060ff8
-Head: 5e21e5f9c873f24435ad48bd72c3bd82c23da2f1
+Previous: f13e65efdb48519d16e101d1bf7b3d5a52baf28f
+Head: ce4fc72fec8aead82fe22959e7cc758923909b52
 Applied:
   kern-bug: 5e21e5f9c873f24435ad48bd72c3bd82c23da2f1
+  refresh-temp: ce4fc72fec8aead82fe22959e7cc758923909b52
 Unapplied:
   af-ib-conn: cf7b9e73d471477d4c7dff2592e5b0d3a7dea8ae
   addrtype: 23a84fed89ba3f6b0eb63e5f8b37c0df504d0d3e
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..537a308
--- /dev/null
@@ -0,0 +1,52 @@
+Bottom: 1ab9fd04718504b5cc665dea14e9fa9df0298d6c
+Top:    3a5e1771417c34940355c5d56136e2c805bc2e4f
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2013-02-01 23:08:28 -0800
+
+Refresh of kern-bug
+
+---
+
+diff --git a/src/cma.c b/src/cma.c
+index 06bea44..7a9f6dc 100755
+--- a/src/cma.c
++++ b/src/cma.c
+@@ -125,6 +125,7 @@ static pthread_mutex_t mut = PTHREAD_MUTEX_INITIALIZER;
+ static int abi_ver = RDMA_USER_CM_MAX_ABI_VERSION;
+ int af_ib_support;
+ static struct index_map ucma_idm;
++static fastlock_t idm_lock;
+ static void ucma_cleanup(void)
+ {
+@@ -216,6 +217,7 @@ int ucma_init(void)
+               return 0;
+       }
++      fastlock_init(&idm_lock);
+       ret = check_abi_version();
+       if (ret)
+               goto err1;
+@@ -380,12 +382,9 @@ static void ucma_put_device(struct cma_device *cma_dev)
+ static void ucma_insert_id(struct cma_id_private *id_priv)
+ {
+-      if (id_priv->handle > IDX_MAX_INDEX)
+-              return;
+-
+-      pthread_mutex_lock(&mut);
++      fastlock_acquire(&idm_lock);
+       idm_set(&ucma_idm, id_priv->handle, id_priv);
+-      pthread_mutex_unlock(&mut);
++      fastlock_release(&idm_lock);
+ }
+ static void ucma_remove_id(struct cma_id_private *id_priv)
+@@ -1954,7 +1953,6 @@ retry:
+       if (resp.uid) {
+               evt->id_priv = (void *) (uintptr_t) resp.uid;
+       } else {
+-printf("no uid event %s\n", rdma_event_str(resp.event));
+               evt->id_priv = ucma_lookup_id(resp.id);
+               if (!evt->id_priv) {
+                       fprintf(stderr, PFX "Warning: discarding unmatched "