• Ramachandra K's avatar
    IB/mad: Fix RMPP header RRespTime manipulation · 7020cb0f
    Ramachandra K authored
    Fix ib_set_rmpp_flags() to use the correct bit mask for RRespTime.  In
    the 8-bit field of the RMPP header, the first 5 bits are RRespTime and
    next 3 bits are RMPPFlags. Hence to retain the first 5 bits, the mask
    should be 0xF8 instead of 0xF1.
    
    ack_recv()-->format_ack() calls ib_set_rmpp_flags() and due to the
    incorrect ANDing with 0xF1, RRespTime got changed incorrectly and RMPP
    Acks sent back always had a RRespTime of 0x1E (30) which caused the
    other end to consider the time outs to be approximately 4297 seconds
    (i.e. in the order of 4*2^30) instead of the usual ~4 seconds (order
    of 4*2^20).
    Signed-off-by: default avatarRamachandra K <ramachandra.kuchimanchi@qlogic.com>
    Acked-by: default avatarSean Hefty <sean.hefty@intel.com>
    Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
    7020cb0f
ib_mad.h 22.3 KB