On Tue, 2015-07-07 at 09:18 +0300, Sagi Grimberg wrote:
> On 7/7/2015 1:51 AM, Nicholas A. Bellinger wrote:
> > On Mon, 2015-07-06 at 16:15 +0300, Sagi Grimberg wrote:
> >> This patch set modifies the target sense data handling.
> >> First, cleanup transport_send_check_condition_and_sense()
> >> by splitting the sense translation to a separate function.
> >> Second, convert sense reason the switch statement to a table
> >> driven code. Third, Use scsi common helpers to correctly set
> >> the sense buffer. Last, Fix wrong setting of t10-pi errors
> >> (non descriptor format).
> >>
> >> Changes from v2:
> >> - Pass sense_reason_t to scsi_translate_sense()
> >> - Split patch 3:
> >> 1) move the helpers to scsi_common.c
> >> 2) use helpers in the target code
> >> 3) always use descriptor-type sense data for PI errors
> >>
> >> Changes from v1:
> >> - Added Reviewed-by tags for patches 1,2
> >> - Fixed compilation error after testing patch #3 on scsi/for-next
> >> branch. Moved scsi_sense_desc_find() to scsi_common as well (dependency)
> >> and also moved <asm/unaligned.h> include to scsi_common.h
> >>
> >> Changes from v0:
> >> - Added Bart's patches and converted my patch to apply over his
> >> - Moved scsi sense helpers to scsi_common
> >>
> >> Bart Van Assche (2):
> >> target: Inline transport_get_sense_codes()
> >> target: Split transport_send_check_condition_and_sense()
> >>
> >> Sagi Grimberg (3):
> >> scsi: Move sense handling routines to scsi_common
> >> target: Use scsi helpers to build the sense data correctly
> >> target: Fix wrong setting of sense format for PI errors
> >>
> >> drivers/scsi/scsi_common.c | 98 ++++++++
> >> drivers/scsi/scsi_error.c | 99 +-------
> >> drivers/target/target_core_spc.c | 31 +--
> >> drivers/target/target_core_transport.c | 399
> >> ++++++++++++---------------------
> >> include/scsi/scsi_common.h | 5 +
> >> include/scsi/scsi_eh.h | 7 +-
> >> include/target/target_core_base.h | 1 +
> >> 7 files changed, 256 insertions(+), 384 deletions(-)
> >>
> >
> > Nice series to make scsi-core and target-core use common code. ;)
> >
> > Applied to target-pending/for-next.
> >
> > hch + jejb, please let me know if you have any objections to taking this
> > through target-pending.
>
> Can you please fold into patch #5 this change suggested by Bart:
>
> diff --git a/drivers/target/target_core_transport.c
> b/drivers/target/target_core_transport.c
> index 79bb8d1..9c34937 100644
> --- a/drivers/target/target_core_transport.c
> +++ b/drivers/target/target_core_transport.c
> @@ -2625,7 +2625,7 @@ struct sense_info {
> u8 asc;
> u8 ascq;
> bool add_sector_info;
> - int desc_format;
> + bool desc_format;
> };
>
> static const struct sense_info sense_info_table[] = {
> @@ -2709,21 +2709,21 @@ static const struct sense_info
> sense_info_table[] = {
> .asc = 0x10,
> .ascq = 0x01, /* LOGICAL BLOCK GUARD CHECK FAILED */
> .add_sector_info = true,
> - .desc_format = 1,
> + .desc_format = true,
> },
> [TCM_LOGICAL_BLOCK_APP_TAG_CHECK_FAILED] = {
> .key = ILLEGAL_REQUEST,
> .asc = 0x10,
> .ascq = 0x02, /* LOGICAL BLOCK APPLICATION TAG CHECK
> FAILED */
> .add_sector_info = true,
> - .desc_format = 1,
> + .desc_format = true,
> },
> [TCM_LOGICAL_BLOCK_REF_TAG_CHECK_FAILED] = {
> .key = ILLEGAL_REQUEST,
> .asc = 0x10,
> .ascq = 0x03, /* LOGICAL BLOCK REFERENCE TAG CHECK
> FAILED */
> .add_sector_info = true,
> - .desc_format = 1,
> + .desc_format = true,
> },
> [TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE] = {
> /*
> --
>
Folded into the original patch.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html