• Chuck Lever's avatar
    svcrdma: Remove BH-disabled spin locking in svc_rdma_send() · e4eb42ce
    Chuck Lever authored
    svcrdma's current SQ accounting algorithm takes sc_lock and disables
    bottom-halves while posting all RDMA Read, Write, and Send WRs.
    
    This is relatively heavyweight serialization. And note that Write and
    Send are already fully serialized by the xpt_mutex.
    
    Using a single atomic_t should be all that is necessary to guarantee
    that ib_post_send() is called only when there is enough space on the
    send queue. This is what the other RDMA-enabled storage targets do.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    e4eb42ce
svc_rdma_transport.c 37.3 KB