On 12/21/2014 11:07 AM, Ilya Nelkenbaum wrote: > On 12/20/2014 8:22 PM, Vangelis Tasoulas wrote: >> From a399cd7398a86b72541c628588365c252882cd80 Mon Sep 17 00:00:00 2001 >> From: Vangelis Tasoulas <[email protected]> >> Date: Sat, 20 Dec 2014 19:10:33 +0100 >> Subject: [PATCH] Fixes wrong assertion failed in osm_switch_get_lft_block() >> when LIDs from the top LFT block (0xbfc0-0xbfff) are used. >> >> --- >> opensm/osm_switch.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/opensm/osm_switch.c b/opensm/osm_switch.c >> index 11efd54..a28ec28 100644 >> --- a/opensm/osm_switch.c >> +++ b/opensm/osm_switch.c >> @@ -168,7 +168,7 @@ boolean_t osm_switch_get_lft_block(IN const >> osm_switch_t * p_sw, >> if (base_lid_ho > p_sw->max_lid_ho) >> return FALSE; >> >> - CL_ASSERT(base_lid_ho + IB_SMP_DATA_SIZE <= IB_LID_UCAST_END_HO); >> + CL_ASSERT(base_lid_ho + IB_SMP_DATA_SIZE - 1 <= >> IB_LID_UCAST_END_HO); > What about using IB_LID_MCAST_START_HO (49152) instead of IB_LID_UCAST_END_HO > (49151)? > No additional arithemtic will be needed then.
This function is about the LFTs and not the MFTs, so having '<= IB_LID_MCAST_START_HO' would look a bit confusing -at least to me- at a first glance due to the equal sign. Less or equal to the first mcast LID? I understand the less, but why equal? > >> memcpy(p_block, &(p_sw->lft[base_lid_ho]), IB_SMP_DATA_SIZE); >> return TRUE; >> } >> >
signature.asc
Description: OpenPGP digital signature
