Version: 1
-Previous: 7009538b9ea96f62d678a9df15d32d11198f575c
-Head: cd06b1d11e30b36d43cf8c3211c2e50116631a08
+Previous: 47bae33fd9a78b1ea6a9fb3be0ec7dcd08139aa2
+Head: aeb215d04e942b6877c2359ea54ab28cb42e5787
Applied:
sync: 452ce3b051e10e10363baa77834962a89267e052
pre-af-ib: 73504ef1f812bea6d1fd59f194f90e5194ca2efa
gai: 720aaa185b9ce215b2d0678f103ccdf50fa7ffbf
getreq: 0b8f86a7e557e3b9abf4c2586ae9e7e885462623
ep: cd06b1d11e30b36d43cf8c3211c2e50116631a08
+ refresh-temp: aeb215d04e942b6877c2359ea54ab28cb42e5787
Unapplied:
cq-status: d4535a68c8d41302c9ee9d44b98a75ea19b4f172
wv-rm-ioctl: 2c4f8b27f89993bc9c1215e8c358046b2934f755
--- /dev/null
+Bottom: 00f7ceb6e5b2ceb61a3fb4fbe942c7cfcad9529e
+Top: b947cd8d23c0e7a918f2659a707c0e94f7caeb30
+Author: Sean Hefty <sean.hefty@intel.com>
+Date: 2010-08-16 11:59:12 -0700
+
+Refresh of ep
+
+---
+
+diff --git a/trunk/ulp/librdmacm/src/cma.cpp b/trunk/ulp/librdmacm/src/cma.cpp
+index cb2f20c..6e1f93a 100644
+--- a/trunk/ulp/librdmacm/src/cma.cpp
++++ b/trunk/ulp/librdmacm/src/cma.cpp
+@@ -950,6 +950,12 @@ int rdma_get_request(struct rdma_cm_id *listen, struct rdma_cm_id **id)
+ goto err;\r
+ }\r
+ \r
++ if (id_priv->qp_init_attr) {\r
++ ret = rdma_create_qp(event->id, id_priv->pd, id_priv->qp_init_attr);\r
++ if (ret)\r
++ goto err;\r
++ }\r
++\r
+ *id = event->id;\r
+ (*id)->event = event;\r
+ return 0;\r
+@@ -1345,30 +1351,30 @@ int rdma_migrate_id(struct rdma_cm_id *id, struct rdma_event_channel *channel)
+ return 0;\r
+ }\r
+ \r
+-static int ucma_passive_ep(struct rdma_cm_id *id, struct rdma_addrinfo *res,
+- struct ibv_pd *pd, struct ibv_qp_init_attr *qp_init_attr)
+-{
+- struct cma_id_private *id_priv;
+- int ret;
+-
+- ret = rdma_bind_addr(id, res->ai_src_addr);
+- if (ret)
+- return ret;
+-
+- id_priv = CONTAINING_RECORD(id, struct cma_id_private, id);
+- id_priv->pd = pd;
+-
+- if (qp_init_attr) {
+- id_priv->qp_init_attr = new struct ibv_qp_init_attr;
+- if (!id_priv->qp_init_attr)
+- return rdma_seterrno(ENOMEM);
+-
+- *id_priv->qp_init_attr = *qp_init_attr;
+- id_priv->qp_init_attr->qp_type = (enum ibv_qp_type) res->ai_qp_type;
+- }
+-
+- return 0;
+-}
++static int ucma_passive_ep(struct rdma_cm_id *id, struct rdma_addrinfo *res,\r
++ struct ibv_pd *pd, struct ibv_qp_init_attr *qp_init_attr)\r
++{\r
++ struct cma_id_private *id_priv;\r
++ int ret;\r
++\r
++ ret = rdma_bind_addr(id, res->ai_src_addr);\r
++ if (ret)\r
++ return ret;\r
++\r
++ id_priv = CONTAINING_RECORD(id, struct cma_id_private, id);\r
++ id_priv->pd = pd;\r
++\r
++ if (qp_init_attr) {\r
++ id_priv->qp_init_attr = new struct ibv_qp_init_attr;\r
++ if (!id_priv->qp_init_attr)\r
++ return rdma_seterrno(ENOMEM);\r
++\r
++ *id_priv->qp_init_attr = *qp_init_attr;\r
++ id_priv->qp_init_attr->qp_type = (enum ibv_qp_type) res->ai_qp_type;\r
++ }\r
++\r
++ return 0;\r
++}\r
+ \r
+ int rdma_create_ep(struct rdma_cm_id **id, struct rdma_addrinfo *res,\r
+ struct ibv_pd *pd, struct ibv_qp_init_attr *qp_init_attr)