[ofa-general] [PATCH] IB/mthca: initialise GRH:HopLimit when building MLX headers

Rolf Manderscheid rvm at obsidianresearch.com
Thu May 17 08:45:48 PDT 2007


Hi Roland,

Global CM packets used by rmda_cm were being sent with a GRH:hopLimit of zero, causing
them to be dropped by the router.  The problem was a missing initialiser in mthca_read_ah
(called by build_mlx_header).

Signed-off-by: Rolf Manderscheid <rvm at obsidianresearch.com>

---

diff --git a/drivers/infiniband/hw/mthca/mthca_av.c b/drivers/infiniband/hw/mthca/mthca_av.c
index 27caf3b..d952891 100644
--- a/drivers/infiniband/hw/mthca/mthca_av.c
+++ b/drivers/infiniband/hw/mthca/mthca_av.c
@@ -279,6 +279,7 @@ int mthca_read_ah(struct mthca_dev *dev, struct mthca_ah *ah,
 			(be32_to_cpu(ah->av->sl_tclass_flowlabel) >> 20) & 0xff;
 		header->grh.flow_label    =
 			ah->av->sl_tclass_flowlabel & cpu_to_be32(0xfffff);
+		header->grh.hop_limit = ah->av->hop_limit;
 		ib_get_cached_gid(&dev->ib_dev,
 				  be32_to_cpu(ah->av->port_pd) >> 24,
 				  ah->av->gid_index % dev->limits.gid_table_len,



More information about the general mailing list