From 6cdcfc7e3a3140bd1bdf18957b8325a15bcbd6fd Mon Sep 17 00:00:00 2001 From: dmitrygx Date: Mon, 14 Feb 2022 14:12:08 +0200 Subject: [PATCH] UCT/IB/RC: Don't do FC on failed RC EP --- src/uct/ib/rc/base/rc_iface.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/uct/ib/rc/base/rc_iface.c b/src/uct/ib/rc/base/rc_iface.c index ba095e6ed5f..d4acf1ad6c2 100644 --- a/src/uct/ib/rc/base/rc_iface.c +++ b/src/uct/ib/rc/base/rc_iface.c @@ -359,8 +359,10 @@ ucs_status_t uct_rc_iface_fc_handler(uct_rc_iface_t *iface, unsigned qp_num, ucs_assert(iface->config.fc_enabled); - if ((ep == NULL) || (ep->flags & UCT_RC_EP_FLAG_FLUSH_CANCEL)) { - /* We get fc for ep which is being removed or cancelled, so should ignore it */ + if ((ep == NULL) || (ep->flags & (UCT_RC_EP_FLAG_FLUSH_CANCEL | + UCT_RC_EP_FLAG_ERR_HANDLER_INVOKED))) { + /* We get fc for ep which is being removed/cancelled/failed, so should + * ignore it */ if (fc_hdr == UCT_RC_EP_FC_PURE_GRANT) { return UCS_OK; }