Hi Stan,<br><div class="gmail_quote">On Wed, Sep 28, 2011 at 7:26 PM, Smith, Stan <span dir="ltr"><<a href="mailto:stan.smith@intel.com">stan.smith@intel.com</a>></span> wrote:<br><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
Hello,<br>
In porting Opensm 3.3.11 to Windows the following MC osmtest failure occurred.<br>
<br>
'osmtest -f m -M1' kept failing [ERR 0210] due to opensm 3.3.11 failing the MC group create as PKey == 0.<br>
<br>
Specifically the ib_pkey_is_invalid() call @ line 1026 in osm_sa_mcmember.c returned TRUE?<br>
Turns out the opensm p_recvd_mcmember_rec->pkey == 0, as it was set in osmtest.<br>
[osmt_multicast.c in the call to osmt_init_mc_memory() @ line 1427].<br>
<br>
The Windows fix was to 'mc_req_rec.pkey = IB_DEFAULT_PKEY' prior to calling osmt_send_mcast_request().<br>
The fix needed to be applied in a few places; now all osmtests are passing.<br>
<br>
Thoughts on the failures?<br></blockquote><div> </div><div><font size="3" face="Times New Roman">
</font></div><p style="margin: 0in 0in 0pt;" class="MsoNormal"><font size="3"><font face="Calibri">commit f7f1ead1b4e9bba741a0d1312513839504cab1e3 introduced
an additional </font></font><font size="3"><font face="Calibri">pkey check into osm_sa_mcmember_record.c:mcmr_rcv_join_mgrp</font></font></p><div><font size="3" face="Times New Roman"></font> </div><p style="margin: 0in 0in 0pt;" class="MsoNormal">
<font size="3"><font face="Calibri">subsequent commit ffdcdec8a6557088b23e273c5d605465501d2d24
fixed only</font></font></p><div><font size="3" face="Times New Roman">
</font><font size="3"><font face="Calibri">some of the pkeys in the multicast flow of osmt_multicast.c</font></font></div><div><font size="3" face="Times New Roman">
</font></div><div>I don't have a good explanation for why only some of the cases were changed/fixed. I'm sure I ran the multicast flow.</div><div> </div><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
<br>
Sean Hefty did a OFED for Linux test using head of the opensm src tree:<br>
<br>
osmtest -f m -M1<br>
<br>
Sep 28 15:43:19 736239 [6E1F3700] 0x02 -> osmt_run_mcast_flow: Checking Create given MGID=0 valid Set several options :<br>
First above min RATE, Second less than max RATE<br>
Third above min MTU, Fourth less than max MTU<br>
Fifth exact MTU & RATE feasible, Sixth exact RATE feasible<br>
Seventh exact MTU feasible (o15.0.1.4)...<br>
Sep 28 15:43:19 737661 [6E1F3700] 0x02 -> osmt_run_mcast_flow: Validating resulting MGID (o15.0.1.5)...<br>
Sep 28 15:43:19 737720 [6E1F3700] 0x02 -> osmt_run_mcast_flow: Checking Create given MGID=0 (o15.0.1.4)...<br>
Sep 28 15:43:19 738032 [6D9F0710] 0x01 -> __osmv_sa_mad_rcv_cb: ERR 5501: Remote error:0x0200<br>
Sep 28 15:43:19 738054 [6D9F0710] 0x01 -> osmtest_query_res_cb: ERR 0003: Error on query (IB_REMOTE_ERROR)<br>
Sep 28 15:43:19 738082 [6E1F3700] 0x01 -> osmt_send_mcast_request: ERR 0224: ib_query failed (IB_REMOTE_ERROR)<br>
Sep 28 15:43:19 738110 [6E1F3700] 0x01 -> osmt_send_mcast_request: Remote error = IB_SA_MAD_STATUS_REQ_INVALID<br>
Sep 28 15:43:19 738134 [6E1F3700] 0x01 -> osmt_run_mcast_flow: ERR 0210: Failed to create MCG for MGID=0 - got IB_REMOTE_ERROR/IB_SA_MAD_STATUS_REQ_INVALID<br>
Sep 28 15:43:19 738162 [6E1F3700] 0x01 -> osmtest_run: ERR 0152: Multicast Flow failed: (IB_REMOTE_ERROR)<br>
OSMTEST: TEST "Multicast" FAIL<br></blockquote><div> </div><div>Yes, I see the same thing.</div><div> </div><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
<br>
Not a patch, only reference points to what I did to fix the issue in Windows.<br>
<br>
--- F:/OSM/opensm-3.3.11/osmtest/osmt_multicast.c Wed Sep 28 16:16:25 2011<br>
+++ F:/openIB-windows-svn/latest/gen1/trunk/ulp/opensm/userX/osmtest/osmt_multicast.c Wed Sep 28 14:23:57 2011<br>
@@ -768,8 +768,8 @@<br>
IB_MCR_COMPMASK_RATE_SEL | IB_MCR_COMPMASK_RATE;<br>
<br>
OSM_LOG(&p_osmt->log, OSM_LOG_ERROR, EXPECTING_ERRORS_START "\n");<br>
- status = osmt_send_mcast_request(p_osmt, 1, &mc_req_rec, comp_mask,<br>
- sa_mad);<br>
+<br>
+ status = osmt_send_mcast_request(p_osmt, 1, &mc_req_rec, comp_mask, sa_mad);<br>
OSM_LOG(&p_osmt->log, OSM_LOG_ERROR, EXPECTING_ERRORS_END "\n");<br>
<br>
if (((ib_net16_t) (sa_mad->status & IB_SMP_STATUS_MASK)) !=<br>
@@ -1429,6 +1429,7 @@<br>
/* no MGID */<br>
memset(&mc_req_rec.mgid, 0, sizeof(ib_gid_t));<br>
/* Request Join */<br>
+ mc_req_rec.pkey = IB_DEFAULT_PKEY;<br>
ib_member_set_join_state(&mc_req_rec, IB_MC_REC_STATE_FULL_MEMBER);<br>
<br>
mc_req_rec.pkt_life = 0 | IB_PATH_SELECTOR_GREATER_THAN << 6;<br>
@@ -1455,6 +1456,7 @@<br>
/* o15.0.1.6: */<br>
/* - Create a new MCG with valid requested MGID. */<br>
osmt_init_mc_query_rec(p_osmt, &mc_req_rec);<br>
+ mc_req_rec.pkey = IB_DEFAULT_PKEY;<br>
mc_req_rec.mgid = good_mgid;<br>
<br>
OSM_LOG(&p_osmt->log, OSM_LOG_INFO,<br>
@@ -2221,6 +2223,7 @@<br>
"\t\twith unrealistic MTU greater than 4096 (o15.0.1.8)...\n");<br>
<br>
/* First create new mgrp */<br>
+ mc_req_rec.pkey = IB_DEFAULT_PKEY;<br>
ib_member_set_join_state(&mc_req_rec, IB_MC_REC_STATE_FULL_MEMBER);<br>
mc_req_rec.mtu = IB_MTU_LEN_1024 | IB_PATH_SELECTOR_EXACTLY << 6;<br>
memset(&mc_req_rec.mgid, 0, sizeof(ib_gid_t));<br>
@@ -2308,6 +2311,7 @@<br>
}<br>
<br>
if (remote_port_guid != 0x0) {<br>
+ mc_req_rec.pkey = IB_DEFAULT_PKEY;<br>
ib_member_set_join_state(&mc_req_rec,<br>
IB_MC_REC_STATE_FULL_MEMBER);<br>
memset(&mc_req_rec.mgid, 0, sizeof(ib_gid_t));<br>
<br>
<br>
Thanks,<br></blockquote><div> </div><div>Thanks; patch to follow shortly.</div><div> </div><div>-- Hal</div><div> </div><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">
<br>
Stan.<br>
<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
ofw mailing list<br>
<a href="mailto:ofw@lists.openfabrics.org">ofw@lists.openfabrics.org</a><br>
<a href="http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw" target="_blank">http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw</a><br>
</blockquote></div><br>