• James Smart's avatar
    nvme_fc: add aen abort to teardown · 78a7ac26
    James Smart authored
    Add abort support for aens. Commonized the op abort to apply to aen or
    real ios (caused some reorg/routine movement). Abort path sets termination
    flag in prep for next patch that will be watching i/o abort completion
    before proceeding with controller teardown.
    
    Now that we're aborting aens, the "exit" code that simply cleared out
    their context no longer applies.
    
    Also clarified how we detect an AEN vs a normal io - by a flag, not
    by whether a rq exists or the a rqno is out of range.
    
    Note: saw some interesting cases where if the queues are stopped and
    we're waiting for the aborts, the core layer can call the complete_rq
    callback for the io. So the io completion synchronizes link side completion
    with possible blk layer completion under error.
    Signed-off-by: default avatarJames Smart <james.smart@broadcom.com>
    Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    78a7ac26
fc.c 70.1 KB