Brian,
quoted
Thanks for the detailed analysis. This is very helpful. Have you
considered to change the ipr driver such that it terminates REPORT
SUPPORTED OPERATION CODES commands with the appropriate check
condition code instead of DID_ERROR?
Yes. That data is actually in the sense buffer, but since I'm also
setting DID_ERROR, scsi_decide_disposition isn't using it. I've got a
patch to do just as you suggest, to stop setting DID_ERROR when there
is more detailed error data available, but it will need some
additional testing before I submit, as it will impact much more than
just this case.
I agree. In this case where a command is not supported, a check
condition would be a better way to signal the failure to the SCSI
midlayer.
--
Martin K. Petersen Oracle Linux Engineering