target: Report bad sector in sense data for DIF errors
authorSagi Grimberg <sagig@mellanox.com>
Thu, 23 Jan 2014 17:29:38 +0000 (19:29 +0200)
committerNicholas Bellinger <nab@linux-iscsi.org>
Sat, 25 Jan 2014 06:58:53 +0000 (06:58 +0000)
SPC-4 states that data-integrity errors shall also report
the failed sector in CHECK_CONDITION response sense data
information field.

Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_sbc.c
drivers/target/target_core_transport.c
include/target/target_core_base.h

index 75364c7..fa3cae3 100644 (file)
@@ -1131,6 +1131,7 @@ sbc_dif_verify_write(struct se_cmd *cmd, sector_t start, unsigned int sectors,
                        if (rc) {
                                kunmap_atomic(paddr);
                                kunmap_atomic(daddr);
+                               cmd->bad_sector = sector;
                                return rc;
                        }
 
@@ -1191,6 +1192,7 @@ sbc_dif_verify_read(struct se_cmd *cmd, sector_t start, unsigned int sectors,
                        if (rc) {
                                kunmap_atomic(paddr);
                                kunmap_atomic(daddr);
+                               cmd->bad_sector = sector;
                                return rc;
                        }
 
Simple merge