Skip to content
  • Nicholas Bellinger's avatar
    target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess · 4416f89b
    Nicholas Bellinger authored
    This patch is a >= v4.1 regression bug-fix where control CDB
    emulation logic in commit 38b57f82
    
     now expects a se_cmd->se_sess
    pointer to exist when determining T10-PI support is to be exposed
    for initiator host ports.
    
    To address this bug, go ahead and add locally generated se_cmd
    descriptors for copy-offload block-copy to it's own stand-alone
    se_session nexus, while the parent EXTENDED_COPY se_cmd descriptor
    remains associated with it's originating se_cmd->se_sess nexus.
    
    Note a valid se_cmd->se_sess is also required for future support
    of WRITE_INSERT and READ_STRIP software emulation when submitting
    backend I/O to se_device that exposes T10-PI suport.
    
    Reported-by: default avatarAlex Gorbachev <ag@iss-integration.com>
    Tested-by: default avatarAlex Gorbachev <ag@iss-integration.com>
    Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
    Cc: Hannes Reinecke <hare@suse.de>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Doug Gilbert <dgilbert@interlog.com>
    Cc: <stable@vger.kernel.org> # v4.1+
    Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
    4416f89b