From 91f08ff865033598eca478c77bf06ef965aab7f3 Mon Sep 17 00:00:00 2001 From: Jessie Yang Date: Tue, 25 Nov 2025 14:30:17 -0800 Subject: [PATCH 1/2] prov/efa: Fail efa_rdm_ep_open when user passes FI_RX_CQ_DATA efa protocol does not support FI_RX_CQ_DATA. Signed-off-by: Jessie Yang --- prov/efa/src/rdm/efa_rdm_ep_fiops.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/prov/efa/src/rdm/efa_rdm_ep_fiops.c b/prov/efa/src/rdm/efa_rdm_ep_fiops.c index 303aaac11d6..ffde601e161 100644 --- a/prov/efa/src/rdm/efa_rdm_ep_fiops.c +++ b/prov/efa/src/rdm/efa_rdm_ep_fiops.c @@ -513,6 +513,11 @@ int efa_rdm_ep_open(struct fid_domain *domain, struct fi_info *info, int ret, retv, i; enum fi_hmem_iface iface; + if (info->mode & FI_RX_CQ_DATA) { + EFA_WARN(FI_LOG_EP_CTRL, "FI_RX_CQ_DATA is not supported\n"); + return -FI_EINVAL; + } + efa_rdm_ep = calloc(1, sizeof(*efa_rdm_ep)); if (!efa_rdm_ep) return -FI_ENOMEM; From 070fafe6eb182f62113cf915f0535dc15f4752d5 Mon Sep 17 00:00:00 2001 From: Jessie Yang Date: Tue, 25 Nov 2025 15:34:07 -0800 Subject: [PATCH 2/2] prov/efa: Remove unused function efa_rdm_ep_should_write_rnr_completion Signed-off-by: Jessie Yang --- prov/efa/src/rdm/efa_rdm_ep.h | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/prov/efa/src/rdm/efa_rdm_ep.h b/prov/efa/src/rdm/efa_rdm_ep.h index 2ead3db1861..c5d3ea348dd 100644 --- a/prov/efa/src/rdm/efa_rdm_ep.h +++ b/prov/efa/src/rdm/efa_rdm_ep.h @@ -273,27 +273,6 @@ void efa_rdm_ep_post_internal_rx_pkts(struct efa_rdm_ep *ep); int efa_rdm_ep_bulk_post_internal_rx_pkts(struct efa_rdm_ep *ep); -/** - * @brief return whether this endpoint should write error cq entry for RNR. - * - * For an endpoint to write RNR completion, two conditions must be met: - * - * First, the end point must be able to receive RNR completion from rdma-core, - * which means rnr_etry must be less then EFA_RNR_INFINITE_RETRY. - * - * Second, the app need to request this feature when opening endpoint - * (by setting info->domain_attr->resource_mgmt to FI_RM_DISABLED). - * The setting was saved as efa_rdm_ep->handle_resource_management. - * - * @param[in] ep endpoint - */ -static inline -bool efa_rdm_ep_should_write_rnr_completion(struct efa_rdm_ep *ep) -{ - return (ep->base_ep.rnr_retry < EFA_RNR_INFINITE_RETRY) && - (ep->handle_resource_management == FI_RM_DISABLED); -} - /* * @brief: check whether we should use p2p for this transaction *