scsi: target: Fix sense key for invalid EXTENDED COPY request
authorSergey Samoylenko <s.samoylenko@yadro.com>
Tue, 3 Aug 2021 14:54:10 +0000 (17:54 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 18 Aug 2021 02:28:40 +0000 (22:28 -0400)
commit0394b5048efd73b04276979d014a67f30c0ad699
tree270e52ff85cf4c3b46115305f1765669b79d7f81
parent44678553ad7eb59be3092d6677d8d4a00289afda
scsi: target: Fix sense key for invalid EXTENDED COPY request

TCM fails to pass the following tests in libiscsi:

  SCSI.ExtendedCopy.DescrType
  SCSI.ExtendedCopy.DescrLimits
  SCSI.ExtendedCopy.ParamHdr
  SCSI.ExtendedCopy.ValidSegDescr
  SCSI.ExtendedCopy.ValidTgtDescr

The xcopy code always returns the same NOT READY sense key for all detected
errors. Change the sense key for invalid requests to ILLEGAL REQUEST, and
for aborted transfers to COPY ABORTED.

Link: https://lore.kernel.org/r/20210803145410.80147-3-s.samoylenko@yadro.com
Fixes: d877d7275be3 ("target: Fix a deadlock between the XCOPY code and iSCSI session shutdown")
Reviewed-by: David Disseldorp <ddiss@suse.de>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Konstantin Shelekhin <k.shelekhin@yadro.com>
Signed-off-by: Sergey Samoylenko <s.samoylenko@yadro.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/target_core_xcopy.c