• Steve Wise's avatar
    RDMA/iwcm: Don't call provider reject func with irqs disabled · 54e05f15
    Steve Wise authored
    In commit cb58160e ("RDMA/iwcm: Reject the connection when the cm_id
    is destroyed") a call to the provider's reject handler was added to
    destroy_cm_id() to fix a provider endpoint leak.  This call needs to
    be done with interrupts enabled.  So unlock and relock around this
    call.  This is safe because:
    
    1) the provider will do nothing with this endpoint until the iwcm either
       accepts or rejects.
    2) the lock is only released after the iwcm state is changed, so an
       errant iwcm app that is destroying -and- rejecting the connection
       concurrently will get a failure on one of the calls.
    Signed-off-by: default avatarSteve Wise <swise@opengridcomputing.com>
    Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
    54e05f15
iwcm.c 28.4 KB