target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess
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: Alex Gorbachev <[email protected]>
Tested-by: Alex Gorbachev <[email protected]>
Cc: "Martin K. Petersen" <[email protected]>
Cc: Hannes Reinecke <[email protected]>
Cc: Christoph Hellwig <[email protected]>
Cc: Doug Gilbert <[email protected]>
Cc: <[email protected]> # v4.1+
Signed-off-by: Nicholas Bellinger <[email protected]>