target: Fix sense data for out-of-bounds IO operations
authorRoland Dreier <roland@purestorage.com>
Fri, 8 Feb 2013 23:18:38 +0000 (15:18 -0800)
committerNicholas Bellinger <nab@linux-iscsi.org>
Wed, 13 Feb 2013 19:54:50 +0000 (11:54 -0800)
We're supposed to return LOGICAL BLOCK ADDRESS OUT OF RANGE, not
INVALID FIELD IN CDB.

Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_sbc.c

index a664c664a31ac6accf24d557b66c7ab12e2d9596..170f1f75d2d8dc79da533ba950973d975ddfda10 100644 (file)
@@ -486,7 +486,7 @@ sbc_parse_cdb(struct se_cmd *cmd, struct sbc_ops *ops)
                 */
                if (cmd->t_task_lba || sectors) {
                        if (sbc_check_valid_sectors(cmd) < 0)
-                               return TCM_INVALID_CDB_FIELD;
+                               return TCM_ADDRESS_OUT_OF_RANGE;
                }
                cmd->execute_cmd = ops->execute_sync_cache;
                break;