• Santosh Shilimkar's avatar
    RDS: IB: fix panic due to handlers running post teardown · cf657269
    Santosh Shilimkar authored
    Shutdown code reaping loop takes care of emptying the
    CQ's before they being destroyed. And once tasklets are
    killed, the hanlders are not expected to run.
    
    But because of core tasklet code issues, tasklet handler could
    still run even after tasklet_kill,
    RDS IB shutdown code already reaps the CQs before freeing
    cq/qp resources so as such the handlers have nothing left
    to do post shutdown.
    
    On other hand any handler running after teardown and trying
    to access already freed qp/cq resources causes issues
    Patch fixes this race by  makes sure that handlers returns
    without any action post teardown.
    Reviewed-by: default avatarWengang <wen.gang.wang@oracle.com>
    Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@oracle.com>
    cf657269
ib_cm.c 28.3 KB