• Bart Van Assche's avatar
    scsi: iscsi: Stop using the SCSI pointer · db22de3e
    Bart Van Assche authored
    Instead of storing the iSCSI task pointer and the session age in the SCSI
    pointer, use command-private variables. This patch prepares for removal of
    the SCSI pointer from struct scsi_cmnd.
    
    The list of iSCSI drivers has been obtained as follows:
    $ git grep -lw iscsi_host_alloc
    drivers/infiniband/ulp/iser/iscsi_iser.c
    drivers/scsi/be2iscsi/be_main.c
    drivers/scsi/bnx2i/bnx2i_iscsi.c
    drivers/scsi/cxgbi/libcxgbi.c
    drivers/scsi/iscsi_tcp.c
    drivers/scsi/libiscsi.c
    drivers/scsi/qedi/qedi_main.c
    drivers/scsi/qla4xxx/ql4_os.c
    include/scsi/libiscsi.h
    
    Note: it is not clear to me how the qla4xxx driver can work without this
    patch since it uses the scsi_cmnd::SCp.ptr member for two different
    purposes:
    - The qla4xxx driver uses this member to store a struct srb pointer.
    - libiscsi uses this member to store a struct iscsi_task pointer.
    Reviewed-by: default avatarLee Duncan <lduncan@suse.com>
    Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
    Reviewed-by: default avatarHimanshu Madhani <himanshu.madhani@oracle.com>
    Cc: Chris Leech <cleech@redhat.com>
    Cc: Sagi Grimberg <sagi@grimberg.me>
    Cc: Nilesh Javali <njavali@marvell.com>
    Cc: Manish Rangankar <mrangankar@marvell.com>
    Cc: Karen Xie <kxie@chelsio.com>
    Cc: Ketan Mukadam <ketan.mukadam@broadcom.com>
    Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
    
    iscsi
    
    Link: https://lore.kernel.org/r/20220218195117.25689-26-bvanassche@acm.orgSigned-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    db22de3e
libiscsi.h 14.4 KB