On Thu, 2016-12-22 at 18:07 -0700, Jason Gunthorpe wrote: > The RDMA core uses ib_pack() to convert from unpacked CPU structs > to on-the-wire bitpacked structs. > > This process requires that 1 bit fields are declared as u8 in the > unpacked struct, otherwise the packing process does not read the > value properly and the packed result is wired to 0. Several > places wrongly used int. > > Crucially this means the kernel has never, set reversible > correctly in the path record request. It has always asked for > irreversible paths even if the ULP requests otherwise. > > When the kernel is used with a SM that supports this feature, it > completely breaks communication management if reversible paths are > not properly requested. > > The only reason this ever worked is because opensm ignores the > reversible bit. > > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") > Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx> Thanks, applied. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD
Attachment:
signature.asc
Description: This is a digitally signed message part