[ofa-general] PATCH] IB/ipoib: ignore membership bit when looking for a P_Key in the table

Or Gerlitz ogerlitz at voltaire.com
Tue Jul 24 00:50:47 PDT 2007


Hal Rosenstock wrote:
> On 7/23/07, *Moni Shoua* <monisonlists at gmail.com 
>     Hal Rosenstock wrote:
>      >
>      >     -               if (pkey == tmp_pkey) {
>      >     +               if ((pkey & 0x7fff) == (tmp_pkey & 0x7fff)) {
>      >
>      >

>      > Wouldn't this allow 2 limited PKeys to match though ?

>     Hi Hal,
>     Can you please explain what do you mean? Perhaps by example?

> Two Pkeys which have their full memebership bit off (0x8000). Two 
> limited members are not allowed to talk with each other.

Hal,

ib_find_pkey() is the buddy of ib_find_cached_pkey() which is in the 
stack from day one. Now, ib_find_cached_pkey does some abstraction where 
it masks out the membership bit, so pkeys are matched in 15 bit fashion.

Indeed, the overall design of the IB stack wrt to partial membership in 
a partition is not perfect nor final. I don't see why this masking off 
makes things worse then they could have been without it.

As you know, as some changes need to be done in the IB spec and the 
IPoIB RFC, I am personally holding off with suggesting changes/fixes 
till the spec is done, this is per the approach expressed by you and Sean.

Or.




More information about the general mailing list