• Zhang Jingwang's avatar
    Fix a race condition which may lead to client hung up. · c4ba141e
    Zhang Jingwang authored
    The correctness of BMI depends on the order of two events: the
    completion event of the work request for the MSG_CTS message, the
    arrival of the message with type MSG_RTS_DONE.
    If the MSG_RTS_DONE messages arrives first, then there would be no
    request in the state of RQ_RTS_WAITING_RTS_DONE, so it can't advance
    the state machine. As a result, a log message is printed and the
    message is lost.
ib.c 60.7 KB