-
Notifications
You must be signed in to change notification settings - Fork 167
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iSCSI.iSCSIResiduals.WriteVerify10Residuals test #370
Comments
The Linux kernel SCSI target code (drivers/target/*) is not the best reference to look up information about how SCSI commands should behave. A better reference are the ANSI T10 standards in combination with the SCSI transport standards. The best description of the behavior in case the expected data transfer length (EDTL) does not match the data buffer length is the description from RFC 3720. From that RFC (section 11.4.5):
A slightly more clear description is available in the SRP specification:
|
I look into iSCSI.iSCSIResiduals.WriteVerify10Residuals test with Linux TCM target. And there is we have the following errors:
Why do we expect to receive the SCSI_STATUS_GOOD status for WriteVerify request if the iSCSI(PDU)->ExpectedDataTransferLength != CDB->TransferLength?
I have explored iSCSI RFC (RFC 3720, section 10.3) and SAM3 (4.6 The service delivery subsystem), but did not find the exact answer to what to do in this case (iSCSI(PDU)->ExpectedDataTransferLength != CDB->TransferLength). The Linux rejects such requests: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/target/target_core_transport.c?h=v5.16.11#n1389
Is it correct to check the answer in the WriteVerify test like here: https://github.com/sahlberg/libiscsi/blob/master/test-tool/test_writeverify10_residuals.c#L173 ?
The text was updated successfully, but these errors were encountered: