• Chuck Lever's avatar
    xprtrdma: Revert 3d4cf35b ("xprtrdma: Reply buffer exhaustion...") · 78d506e1
    Chuck Lever authored
    Receive buffer exhaustion, if it were to actually occur, would be
    catastrophic. However, when there are no reply buffers to post, that
    means all of them have already been posted and are waiting for
    incoming replies. By design, there can never be more RPCs in flight
    than there are available receive buffers.
    
    A receive buffer can be left posted after an RPC exits without a
    received reply; say, due to a credential problem or a soft timeout.
    This does not result in fewer posted receive buffers than there are
    pending RPCs, and there is already logic in xprtrdma to deal
    appropriately with this case.
    
    It also looks like the "+ 2" that was removed was accidentally
    accommodating the number of extra receive buffers needed for
    receiving backchannel requests. That will need to be addressed by
    another patch.
    
    Fixes: 3d4cf35b ("xprtrdma: Reply buffer exhaustion can be...")
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Reviewed-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
    Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
    78d506e1
verbs.c 33.2 KB