]> git.openfabrics.org - ~shefty/libibverbs.git/commitdiff
refresh
authorSean Hefty <sean.hefty@intel.com>
Tue, 18 Sep 2012 04:18:26 +0000 (21:18 -0700)
committerSean Hefty <sean.hefty@intel.com>
Tue, 18 Sep 2012 04:18:26 +0000 (21:18 -0700)
meta
patches/refresh-temp [deleted file]
patches/srq_ex

diff --git a/meta b/meta
index c622b189ea147929b8a22b37e5ff5a4de0a0be2e..7303f3d3448b1c629dd7524e12ba164cd9202a82 100644 (file)
--- a/meta
+++ b/meta
@@ -1,12 +1,11 @@
 Version: 1
-Previous: 41eb422debae676edf51983ea7b0f631d6a40934
-Head: 88f3d1b829978da812f29ea664b7976c76bf8846
+Previous: e0258b8699c0e8c8dd3fc12104c935961756ebd7
+Head: f22b88dd94854fd3b42fb6a48e7a6962620ddc81
 Applied:
   verbs-ext: 6fbf2b29ca68fc10b7ee47dc0c09f54db0b32320
   compat-ex: fb8aa3e0b8ed628564d7d774907fd17a72a23522
   xrcd: 71fa003681345f671bdef05c9548263252e949de
-  srq_ex: 2881e8cd99b0a71921b86fb1235b822a270b06b9
-  refresh-temp: 88f3d1b829978da812f29ea664b7976c76bf8846
+  srq_ex: f22b88dd94854fd3b42fb6a48e7a6962620ddc81
 Unapplied:
   xrc_qp: 71de751ac24904a7170258c7ce63c739d28c7a05
 Hidden:
diff --git a/patches/refresh-temp b/patches/refresh-temp
deleted file mode 100644 (file)
index 17f645a..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-Bottom: 115158d16c82c271835675f3638359c45d2b1ab8
-Top:    11941897032eb87737493328f3f37b7c3a43ee9c
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2012-09-17 21:18:26 -0700
-
-Refresh of srq_ex
-
----
-
-diff --git a/src/verbs.c b/src/verbs.c
-index d08ee79..0964ccc 100644
---- a/src/verbs.c
-+++ b/src/verbs.c
-@@ -382,41 +382,25 @@ void __ibv_ack_cq_events(struct ibv_cq *cq, unsigned int nevents)
- }
- default_symver(__ibv_ack_cq_events, ibv_ack_cq_events);
--struct ibv_srq *__ibv_create_srq(struct ibv_pd *pd,
--                               struct ibv_srq_init_attr *srq_init_attr)
--{
--      struct ibv_srq *srq;
--
--      if (!pd->context->ops.create_srq)
--              return NULL;
--
--      srq = pd->context->ops.create_srq(pd, srq_init_attr);
--      if (srq) {
--              srq->context          = pd->context;
--              srq->srq_context      = srq_init_attr->srq_context;
--              srq->pd               = pd;
--              srq->events_completed = 0;
--              pthread_mutex_init(&srq->mutex, NULL);
--              pthread_cond_init(&srq->cond, NULL);
--      }
--
--      return srq;
--}
--default_symver(__ibv_create_srq, ibv_create_srq);
--
- struct ibv_srq *__ibv_create_srq_ex(struct ibv_pd *pd,
-                                   struct ibv_srq_init_attr_ex *srq_init_attr_ex)
- {
-       struct verbs_context *context_ex = verbs_get_ctx(pd->context);
-       struct ibv_srq *srq;
--      if (!context_ex->create_srq_ex ||
--          srq_init_attr_ex->comp_mask >= IBV_SRQ_INIT_ATTR_RESERVED) {
--              errno = ENOSYS;
--              return NULL;
-+      if (srq_init_attr_ex->comp_mask) {
-+              if (!context_ex->create_srq_ex ||
-+                  srq_init_attr_ex->comp_mask >= IBV_SRQ_INIT_ATTR_RESERVED) {
-+                      errno = ENOSYS;
-+                      return NULL;
-+              }
-+
-+              srq = context_ex->create_srq_ex(pd, srq_init_attr_ex);
-+      } else {
-+              srq = pd->context->ops.create_srq(pd, (struct ibv_srq_init_attr *)
-+                                                    srq_init_attr_ex);
-       }
--      srq = context_ex->create_srq_ex(pd, srq_init_attr_ex);
-       if (srq) {
-               srq->context          = pd->context;
-               srq->srq_context      = srq_init_attr_ex->srq_context;
-@@ -442,6 +426,17 @@ struct ibv_srq *__ibv_create_srq_ex(struct ibv_pd *pd,
- }
- default_symver(__ibv_create_srq_ex, ibv_create_srq_ex);
-+struct ibv_srq *__ibv_create_srq(struct ibv_pd *pd,
-+                               struct ibv_srq_init_attr *srq_init_attr)
-+{
-+      struct ibv_srq_init_attr_ex srq_init_attr_ex;
-+
-+      memcpy(&srq_init_attr_ex, srq_init_attr, sizeof *srq_init_attr);
-+      srq_init_attr_ex.comp_mask = 0;
-+      return ibv_create_srq_ex(pd, &srq_init_attr_ex);
-+}
-+default_symver(__ibv_create_srq, ibv_create_srq);
-+
- int __ibv_modify_srq(struct ibv_srq *srq,
-                    struct ibv_srq_attr *srq_attr,
-                    int srq_attr_mask)
index 17defcfa8d79ea5bca73ee3914767538b30d2bcc..c95d45b9148c021caf18acdee9fcf7d27c012293 100644 (file)
@@ -1,5 +1,5 @@
 Bottom: 48f7567ae9fafe6c83c69f1b3525476432737303
-Top:    115158d16c82c271835675f3638359c45d2b1ab8
+Top:    11941897032eb87737493328f3f37b7c3a43ee9c
 Author: Sean Hefty <sean.hefty@intel.com>
 Date:   2012-09-17 12:34:55 -0700
 
@@ -225,33 +225,45 @@ index f21bffe..92bfabd 100644
                
  } IBVERBS_1.0;
 diff --git a/src/verbs.c b/src/verbs.c
-index ea99ab0..d08ee79 100644
+index ea99ab0..0964ccc 100644
 --- a/src/verbs.c
 +++ b/src/verbs.c
-@@ -404,6 +404,44 @@ struct ibv_srq *__ibv_create_srq(struct ibv_pd *pd,
+@@ -382,26 +382,59 @@ void __ibv_ack_cq_events(struct ibv_cq *cq, unsigned int nevents)
  }
- default_symver(__ibv_create_srq, ibv_create_srq);
+ default_symver(__ibv_ack_cq_events, ibv_ack_cq_events);
  
+-struct ibv_srq *__ibv_create_srq(struct ibv_pd *pd,
+-                               struct ibv_srq_init_attr *srq_init_attr)
 +struct ibv_srq *__ibv_create_srq_ex(struct ibv_pd *pd,
 +                                  struct ibv_srq_init_attr_ex *srq_init_attr_ex)
-+{
+ {
 +      struct verbs_context *context_ex = verbs_get_ctx(pd->context);
-+      struct ibv_srq *srq;
+       struct ibv_srq *srq;
+-      if (!pd->context->ops.create_srq)
+-              return NULL;
++      if (srq_init_attr_ex->comp_mask) {
++              if (!context_ex->create_srq_ex ||
++                  srq_init_attr_ex->comp_mask >= IBV_SRQ_INIT_ATTR_RESERVED) {
++                      errno = ENOSYS;
++                      return NULL;
++              }
 +
-+      if (!context_ex->create_srq_ex ||
-+          srq_init_attr_ex->comp_mask >= IBV_SRQ_INIT_ATTR_RESERVED) {
-+              errno = ENOSYS;
-+              return NULL;
++              srq = context_ex->create_srq_ex(pd, srq_init_attr_ex);
++      } else {
++              srq = pd->context->ops.create_srq(pd, (struct ibv_srq_init_attr *)
++                                                    srq_init_attr_ex);
 +      }
-+
-+      srq = context_ex->create_srq_ex(pd, srq_init_attr_ex);
-+      if (srq) {
-+              srq->context          = pd->context;
+-      srq = pd->context->ops.create_srq(pd, srq_init_attr);
+       if (srq) {
+               srq->context          = pd->context;
+-              srq->srq_context      = srq_init_attr->srq_context;
 +              srq->srq_context      = srq_init_attr_ex->srq_context;
-+              srq->pd               = pd;
-+              srq->events_completed = 0;
-+              pthread_mutex_init(&srq->mutex, NULL);
-+              pthread_cond_init(&srq->cond, NULL);
+               srq->pd               = pd;
+               srq->events_completed = 0;
+               pthread_mutex_init(&srq->mutex, NULL);
+               pthread_cond_init(&srq->cond, NULL);
 +
 +              srq->comp_mask |= IBV_SRQ_INIT_ATTR_SRQ_TYPE;
 +              srq->srq_type = (srq_init_attr_ex->comp_mask & IBV_SRQ_INIT_ATTR_SRQ_TYPE) ?
@@ -264,12 +276,21 @@ index ea99ab0..d08ee79 100644
 +                      srq->comp_mask |= IBV_SRQ_CQ;
 +                      srq->cq = srq_init_attr_ex->cq;
 +              }
-+      }
-+
-+      return srq;
-+}
+       }
+       return srq;
+ }
 +default_symver(__ibv_create_srq_ex, ibv_create_srq_ex);
 +
++struct ibv_srq *__ibv_create_srq(struct ibv_pd *pd,
++                               struct ibv_srq_init_attr *srq_init_attr)
++{
++      struct ibv_srq_init_attr_ex srq_init_attr_ex;
++
++      memcpy(&srq_init_attr_ex, srq_init_attr, sizeof *srq_init_attr);
++      srq_init_attr_ex.comp_mask = 0;
++      return ibv_create_srq_ex(pd, &srq_init_attr_ex);
++}
+ default_symver(__ibv_create_srq, ibv_create_srq);
  int __ibv_modify_srq(struct ibv_srq *srq,
-                    struct ibv_srq_attr *srq_attr,
-                    int srq_attr_mask)