[ofa-general] Re: openSM for supporting IPv6 SNM MGIDs consolidation

Sasha Khapyorsky sashak at voltaire.com
Fri Oct 10 01:10:21 PDT 2008


Hi Shirley,

On 15:48 Thu 09 Oct     , Shirley Ma wrote:
> 
> They also tried OFED-1.4-RC2, the consolidation doesn't work, it still
> has all IPv6 MGLID groups, and they didn't see this MGC with
> ff10601b...01ff000000. Is there any known bug in the recent patch or any
> other parameter needs special configured?

Now it is known :) . Thanks for reporting.

And there is a fix:

diff --git a/opensm/opensm/osm_sa_mcmember_record.c b/opensm/opensm/osm_sa_mcmember_record.c
index aef6a3d..fe0e320 100644
--- a/opensm/opensm/osm_sa_mcmember_record.c
+++ b/opensm/opensm/osm_sa_mcmember_record.c
@@ -992,13 +992,10 @@ static unsigned match_and_update_ipv6_snm_mgid(ib_gid_t *mgid)
 
 osm_mgrp_t *osm_get_mgrp_by_mgid(IN osm_sa_t *sa, IN ib_gid_t *p_mgid)
 {
-	ib_gid_t mgid;
 	int i;
 
-	memcpy(&mgid, p_mgid, sizeof(mgid));
-
 	if (sa->p_subn->opt.consolidate_ipv6_snm_req &&
-	    match_and_update_ipv6_snm_mgid(&mgid)) {
+	    match_and_update_ipv6_snm_mgid(p_mgid)) {
 		char gid_str[INET6_ADDRSTRLEN];
 		OSM_LOG(sa->p_log, OSM_LOG_DEBUG,
 			"Special Case Solicited Node Mcast Join for MGID %s\n",
@@ -1009,7 +1006,7 @@ osm_mgrp_t *osm_get_mgrp_by_mgid(IN osm_sa_t *sa, IN ib_gid_t *p_mgid)
 	for (i = 0; i <= sa->p_subn->max_mcast_lid_ho - IB_LID_MCAST_START_HO;
 	     i++)
 		if (sa->p_subn->mgroups[i] &&
-		    match_mgrp_by_mgid(sa->p_subn->mgroups[i], &mgid))
+		    match_mgrp_by_mgid(sa->p_subn->mgroups[i], p_mgid))
 			return sa->p_subn->mgroups[i];
 
 	return NULL;


The behavior is slightly changed - now IPv6 SNM common MC group will
have MGID ff10:601b::1:ff00:0 (three zeroed bytes at end).

> If this is a bug, do we need
> to open a bug for the fix to be in next RC?

It is up to you. I will commit this soon anyway and send the patch to
the list.

Sasha



More information about the general mailing list