[ofw] [PATCH] librdmacm: set private_data_len
Sean Hefty
sean.hefty at intel.com
Sat Jan 23 00:11:19 PST 2010
Set the private_data_len for reported events. This allows
DAPL to use the value when copying private data.
Signed-off-by: Sean Hefty <sean.hefty at intel.com>
---
This should go into 2.2.
trunk/ulp/librdmacm/include/rdma/rdma_cma.h | 2 ++
trunk/ulp/librdmacm/src/cma.cpp | 4 +++-
2 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/trunk/ulp/librdmacm/include/rdma/rdma_cma.h b/trunk/ulp/librdmacm/include/rdma/rdma_cma.h
index c3b9ad1..7b9a6e0 100644
--- a/trunk/ulp/librdmacm/include/rdma/rdma_cma.h
+++ b/trunk/ulp/librdmacm/include/rdma/rdma_cma.h
@@ -44,6 +44,8 @@ extern "C" {
* Interfaces based on librdmacm 1.0.8.
*/
+#define RDMA_MAX_PRIVATE_DATA 56
+
/*
* Upon receiving a device removal event, users must destroy the associated
* RDMA identifier and release all resources allocated with the device.
diff --git a/trunk/ulp/librdmacm/src/cma.cpp b/trunk/ulp/librdmacm/src/cma.cpp
index 2727d88..cde309b 100644
--- a/trunk/ulp/librdmacm/src/cma.cpp
+++ b/trunk/ulp/librdmacm/src/cma.cpp
@@ -84,7 +84,7 @@ struct cma_device
struct cma_event {
struct rdma_cm_event event;
- uint8_t private_data[56];
+ uint8_t private_data[RDMA_MAX_PRIVATE_DATA];
struct cma_id_private *id_priv;
};
@@ -1029,6 +1029,8 @@ int rdma_get_cm_event(struct rdma_event_channel *channel,
evt->id_priv = CONTAINING_RECORD(id, struct cma_id_private, id);
evt->event.id = id;
evt->event.param.conn.private_data = evt->private_data;
+ evt->event.param.conn.private_data_len = RDMA_MAX_PRIVATE_DATA;
+
evt->event.status = id->ep.connect->
GetOverlappedResult(&entry->Overlap, &bytes, FALSE);
More information about the ofw
mailing list