• Jack Morgenstein's avatar
    IB/mthca: Fix max_srq_sge returned by ib_query_device for Tavor devices · 59fef3b1
    Jack Morgenstein authored
    The driver allocates SRQ WQEs size with a power of 2 size both for
    Tavor and for memfree. For Tavor, however, the hardware only requires
    the WQE size to be a multiple of 16, not a power of 2, and the max
    number of scatter-gather allowed is reported accordingly by the
    firmware (and this is the value currently returned by
    ib_query_device() and ibv_query_device()).
    
    If the max number of scatter/gather entries reported by the FW is used
    when creating an SRQ, the creation will fail for Tavor, since the
    required WQE size will be increased to the next power of 2, which
    turns out to be larger than the device permitted max WQE size (which
    is not a power of 2).
    
    This patch reduces the reported SRQ max wqe size so that it can be used
    successfully in creating an SRQ on Tavor HCAs.
    Signed-off-by: default avatarJack Morgenstein <jackm@mellanox.co.il>
    Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
    59fef3b1
mthca_srq.c 17.9 KB