From 936db01fb459e148352d87fd5984f60084cfda1e Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Fri, 18 May 2012 10:35:55 -0700 Subject: [PATCH] Refresh of old-acm --- configure.in | 5 +++++ src/acm.c | 16 ++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/configure.in b/configure.in index fa90fcba..dec6064c 100644 --- a/configure.in +++ b/configure.in @@ -73,6 +73,11 @@ fi AC_CHECK_HEADER(infiniband/acm.h, AC_DEFINE([USE_IB_ACM], 1, [setting IBACM support]), []) +AC_CHECK_HEADER(infiniband/acm.h, + AC_CHECK_MEMBER(struct acm_msg.resolve_data, [], + AC_DEFINE(DEFINE_ACM_MSG, 1, [adding ACM message definition]), + [#include ]), []) + AC_CACHE_CHECK(whether ld accepts --version-script, ac_cv_version_script, if test -n "`$LD --help < /dev/null 2>/dev/null | grep version-script`"; then ac_cv_version_script=yes diff --git a/src/acm.c b/src/acm.c index 7911b415..bcf11dad 100755 --- a/src/acm.c +++ b/src/acm.c @@ -48,6 +48,18 @@ #ifdef USE_IB_ACM #include +#if DEFINE_ACM_MSG +typedef struct cma_acm_msg { + struct acm_hdr hdr; + union{ + uint8_t data[ACM_MSG_DATA_LENGTH]; + struct acm_ep_addr_data resolve_data[0]; + }; +} cma_acm_msg_t; +#else +typedef struct acm_msg cma_acm_msg_t; +#endif + static pthread_mutex_t acm_lock = PTHREAD_MUTEX_INITIALIZER; static int sock; static short server_port = 6125; @@ -237,7 +249,7 @@ err: rdma_freeaddrinfo(ib_rai); } -static void ucma_ib_save_resp(struct rdma_addrinfo *rai, struct acm_msg *msg) +static void ucma_ib_save_resp(struct rdma_addrinfo *rai, cma_acm_msg_t *msg) { struct acm_ep_addr_data *ep_data; struct ibv_path_data *path_data = NULL; @@ -306,7 +318,7 @@ static void ucma_copy_rai_addr(struct acm_ep_addr_data *data, struct sockaddr *a void ucma_ib_resolve(struct rdma_addrinfo **rai, struct rdma_addrinfo *hints) { - struct acm_msg msg; + cma_acm_msg_t msg; struct acm_ep_addr_data *data; int ret; -- 2.46.0