Author: hselasky
Date: Tue Jul 17 09:34:29 2018
New Revision: 336387
URL: https://svnweb.freebsd.org/changeset/base/336387

Log:
  Honor return status of ib_init_ah_from_mcmember() in ibcore.
  
  The return status of ib_init_ah_from_mcmember() is ignored by
  cma_ib_mc_handler().  Honor it and return error event if ah attribute
  initialization failed.
  
  Linux commit:
  6d337179f28cc50ddd7e224f677b4cda70b275fc
  
  MFC after:            1 week
  Sponsored by:         Mellanox Technologies

Modified:
  head/sys/ofed/drivers/infiniband/core/ib_cma.c

Modified: head/sys/ofed/drivers/infiniband/core/ib_cma.c
==============================================================================
--- head/sys/ofed/drivers/infiniband/core/ib_cma.c      Tue Jul 17 09:33:20 
2018        (r336386)
+++ head/sys/ofed/drivers/infiniband/core/ib_cma.c      Tue Jul 17 09:34:29 
2018        (r336387)
@@ -3764,10 +3764,14 @@ static int cma_ib_mc_handler(int status, struct ib_sa_
                        rdma_start_port(id_priv->cma_dev->device)];
 
                event.event = RDMA_CM_EVENT_MULTICAST_JOIN;
-               ib_init_ah_from_mcmember(id_priv->id.device,
-                                        id_priv->id.port_num, &multicast->rec,
-                                        ndev, gid_type,
-                                        &event.param.ud.ah_attr);
+               ret = ib_init_ah_from_mcmember(id_priv->id.device,
+                                              id_priv->id.port_num,
+                                              &multicast->rec,
+                                              ndev, gid_type,
+                                              &event.param.ud.ah_attr);
+               if (ret)
+                       event.event = RDMA_CM_EVENT_MULTICAST_ERROR;
+
                event.param.ud.qp_num = 0xFFFFFF;
                event.param.ud.qkey = be32_to_cpu(multicast->rec.qkey);
                if (ndev)
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to