Version: 1
-Previous: 0f1040d2f4036016a5ca9202984fd1c4db558ee0
-Head: 52b67f0dad7647427fdeb29344d1f7684a8cc9d2
+Previous: 0092f4d2c289b22b400c769046aed9256b9ec833
+Head: eb08384598a3829b40cc525aa2871e4e96817507
Applied:
sync: 452ce3b051e10e10363baa77834962a89267e052
pre-af-ib: 73504ef1f812bea6d1fd59f194f90e5194ca2efa
opt-pd: 408a5b12070039ac95d02f07c04a07d681859a89
- opt-cq: b320ae1957c4af6782372da02daf9d7c6c799913
- refresh-temp: 52b67f0dad7647427fdeb29344d1f7684a8cc9d2
+ opt-cq: eb08384598a3829b40cc525aa2871e4e96817507
Unapplied:
cq-status: d4535a68c8d41302c9ee9d44b98a75ea19b4f172
wv-rm-ioctl: 2c4f8b27f89993bc9c1215e8c358046b2934f755
Bottom: 683e328e2df095b688a60af5b5de4966a5448f20
-Top: 126aa3bfe4e59d12d1ec84fb2db9f898d6ff051f
+Top: 8cf40079eee667ce77d40e89ceda72843734dba8
Author: Sean Hefty <sean.hefty@intel.com>
Date: 2010-08-13 14:58:03 -0700
\r
struct rdma_conn_param\r
diff --git a/trunk/ulp/librdmacm/src/cma.cpp b/trunk/ulp/librdmacm/src/cma.cpp
-index 3c7bed2..8a0b9c6 100644
+index 3c7bed2..0d6e6f5 100644
--- a/trunk/ulp/librdmacm/src/cma.cpp
+++ b/trunk/ulp/librdmacm/src/cma.cpp
@@ -636,6 +636,55 @@ static int ucma_init_ud_qp(struct cma_id_private *id_priv, struct ibv_qp *qp)
(IBV_QP_STATE | IBV_QP_SQ_PSN));\r
}\r
\r
-+static void ucma_destroy_cqs(struct rdma_cm_id *id)
-+{
-+ if (id->recv_cq)
-+ ibv_destroy_cq(id->recv_cq);
-+
-+ if (id->recv_cq_channel)
-+ ibv_destroy_comp_channel(id->recv_cq_channel);
-+
-+ if (id->send_cq)
-+ ibv_destroy_cq(id->send_cq);
-+
-+ if (id->send_cq_channel)
-+ ibv_destroy_comp_channel(id->send_cq_channel);
-+}
-+
-+static int ucma_create_cqs(struct rdma_cm_id *id, struct ibv_qp_init_attr *attr)
-+{
-+ if (!attr->recv_cq) {
-+ id->recv_cq_channel = ibv_create_comp_channel(id->verbs);
-+ if (!id->recv_cq_channel)
-+ goto err;
-+
-+ id->recv_cq = ibv_create_cq(id->verbs, attr->cap.max_recv_wr,
-+ id, id->recv_cq_channel, 0);
-+ if (!id->recv_cq)
-+ goto err;
-+
-+ attr->recv_cq = id->recv_cq;
-+ }
-+
-+ if (!attr->send_cq) {
-+ id->send_cq_channel = ibv_create_comp_channel(id->verbs);
-+ if (!id->send_cq_channel)
-+ goto err;
-+
-+ id->send_cq = ibv_create_cq(id->verbs, attr->cap.max_send_wr,
-+ id, id->send_cq_channel, 0);
-+ if (!id->send_cq)
-+ goto err;
-+
-+ attr->send_cq = id->send_cq;
-+ }
-+
-+ return 0;
-+err:
-+ ucma_destroy_cqs(id);
-+ return rdma_seterrno(ENOMEM);
-+}
++static void ucma_destroy_cqs(struct rdma_cm_id *id)\r
++{\r
++ if (id->recv_cq)\r
++ ibv_destroy_cq(id->recv_cq);\r
++\r
++ if (id->recv_cq_channel)\r
++ ibv_destroy_comp_channel(id->recv_cq_channel);\r
++\r
++ if (id->send_cq)\r
++ ibv_destroy_cq(id->send_cq);\r
++\r
++ if (id->send_cq_channel)\r
++ ibv_destroy_comp_channel(id->send_cq_channel);\r
++}\r
++\r
++static int ucma_create_cqs(struct rdma_cm_id *id, struct ibv_qp_init_attr *attr)\r
++{\r
++ if (!attr->recv_cq) {\r
++ id->recv_cq_channel = ibv_create_comp_channel(id->verbs);\r
++ if (!id->recv_cq_channel)\r
++ goto err;\r
++\r
++ id->recv_cq = ibv_create_cq(id->verbs, attr->cap.max_recv_wr,\r
++ id, id->recv_cq_channel, 0);\r
++ if (!id->recv_cq)\r
++ goto err;\r
++\r
++ attr->recv_cq = id->recv_cq;\r
++ }\r
++\r
++ if (!attr->send_cq) {\r
++ id->send_cq_channel = ibv_create_comp_channel(id->verbs);\r
++ if (!id->send_cq_channel)\r
++ goto err;\r
++\r
++ id->send_cq = ibv_create_cq(id->verbs, attr->cap.max_send_wr,\r
++ id, id->send_cq_channel, 0);\r
++ if (!id->send_cq)\r
++ goto err;\r
++\r
++ attr->send_cq = id->send_cq;\r
++ }\r
++\r
++ return 0;\r
++err:\r
++ ucma_destroy_cqs(id);\r
++ return rdma_seterrno(ENOMEM);\r
++}\r
+\r
__declspec(dllexport)\r
int rdma_create_qp(struct rdma_cm_id *id, struct ibv_pd *pd,\r
+++ /dev/null
-Bottom: 126aa3bfe4e59d12d1ec84fb2db9f898d6ff051f
-Top: 8cf40079eee667ce77d40e89ceda72843734dba8
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2010-08-13 15:34:15 -0700
-
-Refresh of opt-cq
-
----
-
-diff --git a/trunk/ulp/librdmacm/src/cma.cpp b/trunk/ulp/librdmacm/src/cma.cpp
-index 8a0b9c6..0d6e6f5 100644
---- a/trunk/ulp/librdmacm/src/cma.cpp
-+++ b/trunk/ulp/librdmacm/src/cma.cpp
-@@ -636,54 +636,54 @@ static int ucma_init_ud_qp(struct cma_id_private *id_priv, struct ibv_qp *qp)
- (IBV_QP_STATE | IBV_QP_SQ_PSN));\r
- }\r
- \r
--static void ucma_destroy_cqs(struct rdma_cm_id *id)
--{
-- if (id->recv_cq)
-- ibv_destroy_cq(id->recv_cq);
--
-- if (id->recv_cq_channel)
-- ibv_destroy_comp_channel(id->recv_cq_channel);
--
-- if (id->send_cq)
-- ibv_destroy_cq(id->send_cq);
--
-- if (id->send_cq_channel)
-- ibv_destroy_comp_channel(id->send_cq_channel);
--}
--
--static int ucma_create_cqs(struct rdma_cm_id *id, struct ibv_qp_init_attr *attr)
--{
-- if (!attr->recv_cq) {
-- id->recv_cq_channel = ibv_create_comp_channel(id->verbs);
-- if (!id->recv_cq_channel)
-- goto err;
--
-- id->recv_cq = ibv_create_cq(id->verbs, attr->cap.max_recv_wr,
-- id, id->recv_cq_channel, 0);
-- if (!id->recv_cq)
-- goto err;
--
-- attr->recv_cq = id->recv_cq;
-- }
--
-- if (!attr->send_cq) {
-- id->send_cq_channel = ibv_create_comp_channel(id->verbs);
-- if (!id->send_cq_channel)
-- goto err;
--
-- id->send_cq = ibv_create_cq(id->verbs, attr->cap.max_send_wr,
-- id, id->send_cq_channel, 0);
-- if (!id->send_cq)
-- goto err;
--
-- attr->send_cq = id->send_cq;
-- }
--
-- return 0;
--err:
-- ucma_destroy_cqs(id);
-- return rdma_seterrno(ENOMEM);
--}
-+static void ucma_destroy_cqs(struct rdma_cm_id *id)\r
-+{\r
-+ if (id->recv_cq)\r
-+ ibv_destroy_cq(id->recv_cq);\r
-+\r
-+ if (id->recv_cq_channel)\r
-+ ibv_destroy_comp_channel(id->recv_cq_channel);\r
-+\r
-+ if (id->send_cq)\r
-+ ibv_destroy_cq(id->send_cq);\r
-+\r
-+ if (id->send_cq_channel)\r
-+ ibv_destroy_comp_channel(id->send_cq_channel);\r
-+}\r
-+\r
-+static int ucma_create_cqs(struct rdma_cm_id *id, struct ibv_qp_init_attr *attr)\r
-+{\r
-+ if (!attr->recv_cq) {\r
-+ id->recv_cq_channel = ibv_create_comp_channel(id->verbs);\r
-+ if (!id->recv_cq_channel)\r
-+ goto err;\r
-+\r
-+ id->recv_cq = ibv_create_cq(id->verbs, attr->cap.max_recv_wr,\r
-+ id, id->recv_cq_channel, 0);\r
-+ if (!id->recv_cq)\r
-+ goto err;\r
-+\r
-+ attr->recv_cq = id->recv_cq;\r
-+ }\r
-+\r
-+ if (!attr->send_cq) {\r
-+ id->send_cq_channel = ibv_create_comp_channel(id->verbs);\r
-+ if (!id->send_cq_channel)\r
-+ goto err;\r
-+\r
-+ id->send_cq = ibv_create_cq(id->verbs, attr->cap.max_send_wr,\r
-+ id, id->send_cq_channel, 0);\r
-+ if (!id->send_cq)\r
-+ goto err;\r
-+\r
-+ attr->send_cq = id->send_cq;\r
-+ }\r
-+\r
-+ return 0;\r
-+err:\r
-+ ucma_destroy_cqs(id);\r
-+ return rdma_seterrno(ENOMEM);\r
-+}\r
- \r
- __declspec(dllexport)\r
- int rdma_create_qp(struct rdma_cm_id *id, struct ibv_pd *pd,