• Mike Christie's avatar
    [SCSI] iser: fix handling of scsi cmnds during recovery. · b40977d9
    Mike Christie authored
    After the stop_conn callback has returned the LLD should not
    touch the scsi cmds. iscsi_tcp and libiscsi use the
    conn->recv_lock and suspend_rx field to halt recv path
    processing, but iser does not have any protection.
    
    This patch modifies iser so that userspace can just
    call the ep_disconnect callback, which will halt
    all recv IO, before calling the stop_conn callback so
    we do not have to worry about the conn->recv_lock and
    suspend rx field. iser just needs to stop the send side
    from accessing the ib conn.
    
    Fixup to handle when the ep poll fails and ep disconnect
    is called from Erez.
    Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    b40977d9
libiscsi.c 68.7 KB