Linux s390 Architecture development
 help / color / mirror / Atom feed
From: Damien Le Moal <dlemoal@kernel.org>
To: "Martin K . Petersen" <martin.petersen@oracle.com>,
	"James E . J . Bottomley" <James.Bottomley@HansenPartnership.com>,
	linux-scsi@vger.kernel.org, linux-ide@vger.kernel.org,
	Niklas Cassel <cassel@kernel.org>,
	linux-usb@vger.kernel.org, Alan Stern <stern@rowland.harvard.edu>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-s390@vger.kernel.org, Heiko Carstens <hca@linux.ibm.com>
Subject: [PATCH v5 38/40] s390: scsi: use 16-bits defined sense codes
Date: Mon,  7 Sep 2026 11:43:41 +0900	[thread overview]
Message-ID: <20260907024343.1046387-39-dlemoal@kernel.org> (raw)
In-Reply-To: <20260907024343.1046387-1-dlemoal@kernel.org>

Use the 16-bits sense codes and replace all hard-coded additional sense
codes and additional sense code qualifiers with the enum values defined
in include/scsi/scsi_sense.h. This helps with code clarity as the sense
codes being processed are easier to test and self-documented.

No functional change intended.

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
---
 drivers/s390/scsi/zfcp_ext.h  | 2 +-
 drivers/s390/scsi/zfcp_fsf.c  | 9 ++++++---
 drivers/s390/scsi/zfcp_scsi.c | 6 +++---
 3 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/drivers/s390/scsi/zfcp_ext.h b/drivers/s390/scsi/zfcp_ext.h
index 0eb9bc9d03e4..cafdeaf29195 100644
--- a/drivers/s390/scsi/zfcp_ext.h
+++ b/drivers/s390/scsi/zfcp_ext.h
@@ -176,7 +176,7 @@ extern void zfcp_scsi_schedule_rport_register(struct zfcp_port *);
 extern void zfcp_scsi_schedule_rport_block(struct zfcp_port *);
 extern void zfcp_scsi_schedule_rports_block(struct zfcp_adapter *);
 extern void zfcp_scsi_set_prot(struct zfcp_adapter *);
-extern void zfcp_scsi_dif_sense_error(struct scsi_cmnd *, int);
+extern void zfcp_scsi_dif_sense_error(struct scsi_cmnd *, u16);
 extern void zfcp_scsi_shost_update_config_data(
 	struct zfcp_adapter *const adapter,
 	const struct fsf_qtcb_bottom_config *const bottom,
diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c
index d407f16e77ef..1ea6ab720fc0 100644
--- a/drivers/s390/scsi/zfcp_fsf.c
+++ b/drivers/s390/scsi/zfcp_fsf.c
@@ -2485,13 +2485,16 @@ static void zfcp_fsf_fcp_cmnd_handler(struct zfcp_fsf_req *req)
 		set_host_byte(scpnt, DID_ERROR);
 		goto skip_fsfstatus;
 	case FSF_BLOCK_GUARD_CHECK_FAILURE:
-		zfcp_scsi_dif_sense_error(scpnt, 0x1);
+		zfcp_scsi_dif_sense_error(scpnt,
+				LOGICAL_BLOCK_GUARD_CHECK_FAILED);
 		goto skip_fsfstatus;
 	case FSF_APP_TAG_CHECK_FAILURE:
-		zfcp_scsi_dif_sense_error(scpnt, 0x2);
+		zfcp_scsi_dif_sense_error(scpnt,
+				LOGICAL_BLOCK_APPLICATION_TAG_CHECK_FAILED);
 		goto skip_fsfstatus;
 	case FSF_REF_TAG_CHECK_FAILURE:
-		zfcp_scsi_dif_sense_error(scpnt, 0x3);
+		zfcp_scsi_dif_sense_error(scpnt,
+				LOGICAL_BLOCK_REFERENCE_TAG_CHECK_FAILED);
 		goto skip_fsfstatus;
 	}
 	BUILD_BUG_ON(sizeof(struct fcp_resp_with_ext) > FSF_FCP_RSP_SIZE);
diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c
index 3590113c2b74..ea4b968352f4 100644
--- a/drivers/s390/scsi/zfcp_scsi.c
+++ b/drivers/s390/scsi/zfcp_scsi.c
@@ -849,14 +849,14 @@ void zfcp_scsi_set_prot(struct zfcp_adapter *adapter)
 /**
  * zfcp_scsi_dif_sense_error - Report DIF/DIX error as driver sense error
  * @scmd: The SCSI command to report the error for
- * @ascq: The ASCQ to put in the sense buffer
+ * @sense_code: The combined ASC and ASCQ to put in the sense buffer
  *
  * See the error handling in sd_done for the sense codes used here.
  * Set DID_SOFT_ERROR to retry the request, if possible.
  */
-void zfcp_scsi_dif_sense_error(struct scsi_cmnd *scmd, int ascq)
+void zfcp_scsi_dif_sense_error(struct scsi_cmnd *scmd, u16 sense_code)
 {
-	scsi_build_sense(scmd, 1, ILLEGAL_REQUEST, 0x10, ascq);
+	scsi_set_sense(scmd, 1, ILLEGAL_REQUEST, sense_code);
 	set_host_byte(scmd, DID_SOFT_ERROR);
 }
 
-- 
2.55.0


  parent reply	other threads:[~2026-09-07  2:44 UTC|newest]

Thread overview: 112+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-07  2:43 [PATCH v5 00/40] Use defined 16-bits ASC/ASCQ combinations Damien Le Moal
2026-09-07  2:43 ` [PATCH v5 01/40] scsi: define all additional sense codes and their qualifiers Damien Le Moal
2026-09-07  3:14   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 02/40] scsi: constants: use defined sense codes Damien Le Moal
2026-09-07  2:51   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 03/40] scsi: constants: rename internal struct field names Damien Le Moal
2026-09-07  2:48   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 04/40] scsi: rename sense field of struct scsi_failure Damien Le Moal
2026-09-07  2:54   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 05/40] scsi: prepare for using 16-bits defined sense codes Damien Le Moal
2026-09-07  2:54   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 06/40] scsi: use struct scsi_sense_hdr to log sense keys and codes Damien Le Moal
2026-09-07  2:52   ` sashiko-bot
2026-09-07 20:05   ` Bart Van Assche
2026-09-08  0:32     ` Damien Le Moal
2026-09-07  2:43 ` [PATCH v5 07/40] scsi: core: use 16-bits defined sense codes Damien Le Moal
2026-09-07  2:54   ` sashiko-bot
2026-09-07 20:03   ` Bart Van Assche
2026-09-08  0:32     ` Damien Le Moal
2026-09-07  2:43 ` [PATCH v5 08/40] scsi: sd: " Damien Le Moal
2026-09-07  3:11   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 09/40] scsi: sr: " Damien Le Moal
2026-09-07  2:54   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 10/40] scsi: ses: " Damien Le Moal
2026-09-07  2:56   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 11/40] scsi: ch: " Damien Le Moal
2026-09-07  2:54   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 12/40] scsi: st: " Damien Le Moal
2026-09-07  2:57   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 13/40] scsi: device_handlers: hp_sw: " Damien Le Moal
2026-09-07  2:50   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 14/40] scsi: device_handlers: rdac: " Damien Le Moal
2026-09-07  2:52   ` sashiko-bot
2026-09-07 14:11   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 15/40] scsi: device_handlers: emc: " Damien Le Moal
2026-09-07  3:02   ` sashiko-bot
2026-09-07 14:13   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 16/40] scsi: device_handlers: alua: " Damien Le Moal
2026-09-07  2:57   ` sashiko-bot
2026-09-07 14:21   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 17/40] scsi: mpt3sas: " Damien Le Moal
2026-09-07  2:55   ` sashiko-bot
2026-09-07 14:28   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 18/40] scsi: mpi3mr: " Damien Le Moal
2026-09-07  2:55   ` sashiko-bot
2026-09-07 14:30   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 19/40] scsi: 3w-xxxx: " Damien Le Moal
2026-09-07  2:58   ` sashiko-bot
2026-09-07 14:39   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 20/40] scsi: leapraid: " Damien Le Moal
2026-09-07  3:00   ` sashiko-bot
2026-09-07 14:48   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 21/40] scsi: megaraid: " Damien Le Moal
2026-09-07  2:56   ` sashiko-bot
2026-09-07 14:50   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 22/40] scsi: myrX: " Damien Le Moal
2026-09-07  2:59   ` sashiko-bot
2026-09-07 14:54   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 23/40] scsi: smartpqi: " Damien Le Moal
2026-09-07  2:57   ` sashiko-bot
2026-09-07 14:57   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 24/40] scsi: qla2xxx: " Damien Le Moal
2026-09-07  2:58   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 25/40] scsi: ps3rom: " Damien Le Moal
2026-09-07  3:03   ` sashiko-bot
2026-09-07 15:25   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 26/40] scsi: lpfc: " Damien Le Moal
2026-09-07  3:02   ` sashiko-bot
2026-09-07 15:26   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 27/40] scsi: stex: " Damien Le Moal
2026-09-07  3:04   ` sashiko-bot
2026-09-07 15:26   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 28/40] scsi: mvumi: " Damien Le Moal
2026-09-07  3:03   ` sashiko-bot
2026-09-07 15:29   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 29/40] scsi: libiscsi: " Damien Le Moal
2026-09-07  3:03   ` sashiko-bot
2026-09-07 15:29   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 30/40] scsi: ibmvscsi_tgt: " Damien Le Moal
2026-09-07  3:05   ` sashiko-bot
2026-09-07 15:32   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 31/40] scsi: scsi_debug: " Damien Le Moal
2026-09-07  3:12   ` sashiko-bot
2026-09-07 15:41   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 32/40] scsi: hpsa: " Damien Le Moal
2026-09-07  3:03   ` sashiko-bot
2026-09-07 15:57   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 33/40] scsi: storvsc: " Damien Le Moal
2026-09-07  3:06   ` sashiko-bot
2026-09-07 15:59   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 34/40] target: " Damien Le Moal
2026-09-07  3:11   ` sashiko-bot
2026-09-07  2:43 ` [PATCH v5 35/40] usb: storage: " Damien Le Moal
2026-09-07  3:02   ` sashiko-bot
2026-09-07 16:13   ` Johannes Thumshirn
2026-09-08  0:27     ` Damien Le Moal
2026-09-08  1:20       ` Alan Stern
2026-09-07  2:43 ` [PATCH v5 36/40] cdrom: " Damien Le Moal
2026-09-07  3:03   ` sashiko-bot
2026-09-07 16:21   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 37/40] ata: libata: " Damien Le Moal
2026-09-07  3:04   ` sashiko-bot
2026-09-07 16:21   ` Johannes Thumshirn
2026-09-07  2:43 ` Damien Le Moal [this message]
2026-09-07  3:09   ` [PATCH v5 38/40] s390: scsi: " sashiko-bot
2026-09-07 16:25   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 39/40] scsi: cleanup scsi_proto.h Damien Le Moal
2026-09-07  3:07   ` sashiko-bot
2026-09-07 16:45   ` Johannes Thumshirn
2026-09-07  2:43 ` [PATCH v5 40/40] scsi: remove scsi_build_sense() and scsi_build_sense_buffer() Damien Le Moal
2026-09-07  3:02   ` sashiko-bot
2026-09-07 16:57   ` Johannes Thumshirn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260907024343.1046387-39-dlemoal@kernel.org \
    --to=dlemoal@kernel.org \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=cassel@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=hca@linux.ibm.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=stern@rowland.harvard.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox