On Fri, Aug 11, 2017 at 02:35:46PM -0400, Don Hiatt wrote: > This patch series primarily increases sizes of variables that hold > lid values from 16 to 32 bits. Additionally, it adds a check in > the IB mad stack to verify a properly formatted MAD when OPA > extended LIDs are used. > > Signed-off-by: Don Hiatt <don.hiatt@xxxxxxxxx> > Reviewed-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx> > > <...> > > -/* Return slid in 16bit CPU encoding */ > -static inline u16 ib_slid_cpu16(u32 slid) > +/** > + * ib_lid_cpu16 - Return lid in 16bit CPU encoding. > + * In the current implementation the only way to get > + * get the 32bit lid is from other sources for OPA. > + * For IB, lids will always be 16bits so cast the > + * value accordingly. > + * > + * @lid: A 32bit LID > + */ > +static inline u16 ib_lid_cpu16(u32 lid) > { > - return (u16)slid; > + WARN_ON_ONCE(lid && 0xFFFF0000); It will print warning for first lid > 0 The proper lines should be "lid & 0xFFFF0000" (one ampersand). > + return (u16)lid; > } > > -/* Return slid in 16bit BE encoding */ > -static inline u16 ib_slid_be16(u32 slid) > +/** > + * ib_lid_be16 - Return lid in 16bit BE encoding. > + * > + * @lid: A 32bit LID > + */ > +static inline u16 ib_lid_be16(u32 lid) This function returns be16 and not u16. > { > - return cpu_to_be16((u16)slid); > + WARN_ON_ONCE(lid && 0xFFFF0000); The same as above. > + return cpu_to_be16((u16)lid); > } > #endif /* IB_VERBS_H */ > -- > 1.8.3.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html
Attachment:
signature.asc
Description: PGP signature