]> git.openfabrics.org - ~shefty/librdmacm.git/commit
cma: Workaround for rdma_ucm kernel bug
authorIlya Nelkenbaum <ilyan@mellanox.com>
Thu, 26 Mar 2015 19:41:11 +0000 (12:41 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 26 Mar 2015 19:41:11 +0000 (12:41 -0700)
commit1b9125689fecf41b0544b564adb79da2fc8d6c00
tree86f79a9626eccc4082ee583a068ac8c827b88d17
parent12ededead565d9e13cabef9a9bb463dd9b51fb53
cma: Workaround for rdma_ucm kernel bug

For certain new kernels, IB_QP_SMAC bit is erroneously
set in QP attribute mask. This workaround turns
off that bit. It allows SSA connections (AF_IB)
to work. Without this workaround, there are issues
on the client side.

Kernel patch which caused issue is commit dd5f03b
IB/core: Ethernet L2 attributes in verbs/cm structures

Kernel patch to fix this in upstream:

commit c2be9dc0e0fa59cc43c2c7084fc42b430809a0fe
Author: Ilya Nelkenbaum <ilyan@mellanox.com>
Date:   Thu Feb 5 13:53:48 2015 +0200

    IB/core: When marshaling ucma path from user-space, clear unused fields

    When marshaling a user path to the kernel struct ib_sa_path, we need
    to zero smac and dmac and set the vlan id to the "no vlan" value.

    This is to ensure that Ethernet attributes are not used with
    InfiniBand QPs.

Fixes: dd5f03beb4f7 ("IB/core: Ethernet L2 attributes in verbs/cm structures")
Signed-off-by: Ilya Nelkenbaum <ilyan@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
The fix was pushed to stable 3.14, 3.18 and 3.19 versions.

Signed-off-by: Ilya Nelkenbaum <ilyan@mellanox.com>
Signed-off-by: Hal Rosenstock <hal@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
src/cma.c