diff options
author | Roland Dreier <roland@purestorage.com> | 2012-01-17 18:00:56 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-02-13 11:17:02 -0800 |
commit | 0e14d6b67d73aba29df97b9619e97e249a882cbe (patch) | |
tree | cd5ca53433060275a24c2e82ba37fe1a3178567c /drivers | |
parent | f467de45d956d46c692fd6a2331f296e9e872aba (diff) | |
download | kernel-common-0e14d6b67d73aba29df97b9619e97e249a882cbe.tar.gz kernel-common-0e14d6b67d73aba29df97b9619e97e249a882cbe.tar.bz2 kernel-common-0e14d6b67d73aba29df97b9619e97e249a882cbe.zip |
target: Return correct ASC for unimplemented VPD pages
commit bb1acb2ee038a6c13ee99e0b9fb44dacb4a9de84 upstream.
My draft of SPC-4 says:
If the device server does not implement the requested vital product
data page, then the command shall be terminated with CHECK CONDITION
status, with the sense key set to ILLEGAL REQUEST, and the
additional sense code set to INVALID FIELD IN CDB.
Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/target/target_core_cdb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/target/target_core_cdb.c b/drivers/target/target_core_cdb.c index 2e8c1bec8916..24991f357159 100644 --- a/drivers/target/target_core_cdb.c +++ b/drivers/target/target_core_cdb.c @@ -732,7 +732,7 @@ int target_emulate_inquiry(struct se_task *task) } pr_err("Unknown VPD Code: 0x%02x\n", cdb[2]); - cmd->scsi_sense_reason = TCM_UNSUPPORTED_SCSI_OPCODE; + cmd->scsi_sense_reason = TCM_INVALID_CDB_FIELD; ret = -EINVAL; out_unmap: |