• Quinn Tran's avatar
    qla2xxx: Add support for QFull throttling and Term Exchange retry · 33e79977
    Quinn Tran authored
    Through the qla target code, the qlt_send_term_exchange() routine
    is used in various different places to cleanup an exchange. For the
    case of IOCB request queue is full, the exchange is left unhandled/
    dangling. Existing code does not have re-try logic to cleanup the
    exchange. This patch add retry logic to cleanup the exchange before
    letting new commands through.
    
    For the case of FW running out of exchanges, driver need to reply
    SAM_STAT_BUSY to the initiators. This patch add a pending queue
    for the busy reply in case IOCB queue is unable to handle the cmd.
    
    Cc: <stable@vger.kernel.org>
    Signed-off-by: default avatarQuinn Tran <quinn.tran@qlogic.com>
    Signed-off-by: default avatarSaurav Kashyap <saurav.kashyap@qlogic.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    33e79977
qla_target.c 159 KB