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.

>         memcpy(p_block, &(p_sw->lft[base_lid_ho]), IB_SMP_DATA_SIZE);
>         return TRUE;
>  }
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to