From: Bart Van Assche <bvanassche@acm.org>
To: "Martin K . Petersen" <martin.petersen@oracle.com>,
"James E . J . Bottomley" <jejb@linux.vnet.ibm.com>
Cc: linux-scsi@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
Bart Van Assche <bvanassche@acm.org>,
Mike Christie <michael.christie@oracle.com>
Subject: [PATCH 006/117] target: Use enum sam_status instead of u8
Date: Mon, 19 Apr 2021 17:06:54 -0700 [thread overview]
Message-ID: <20210420000845.25873-7-bvanassche@acm.org> (raw)
In-Reply-To: <20210420000845.25873-1-bvanassche@acm.org>
Allow the compiler to verify whether a SAM status code has been specified
where such a code is expected. This patch does not change any functionality
since SAM_STAT_GOOD and GOOD are both symbolic names for the numerical value
0.
Cc: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
drivers/target/loopback/tcm_loop.c | 2 +-
drivers/target/target_core_alua.c | 6 +++---
drivers/target/target_core_iblock.c | 2 +-
drivers/target/target_core_pr.c | 8 ++++----
drivers/target/target_core_pscsi.c | 4 ++--
drivers/target/target_core_sbc.c | 10 +++++-----
drivers/target/target_core_spc.c | 14 +++++++-------
drivers/target/target_core_transport.c | 5 +++--
drivers/target/target_core_xcopy.c | 2 +-
include/target/target_core_backend.h | 4 ++--
include/target/target_core_base.h | 3 ++-
11 files changed, 31 insertions(+), 29 deletions(-)
diff --git a/drivers/target/loopback/tcm_loop.c b/drivers/target/loopback/tcm_loop.c
index 2687fd7d45db..66ea91c52175 100644
--- a/drivers/target/loopback/tcm_loop.c
+++ b/drivers/target/loopback/tcm_loop.c
@@ -550,7 +550,7 @@ static int tcm_loop_write_pending(struct se_cmd *se_cmd)
}
static int tcm_loop_queue_data_or_status(const char *func,
- struct se_cmd *se_cmd, u8 scsi_status)
+ struct se_cmd *se_cmd, enum sam_status scsi_status)
{
struct tcm_loop_cmd *tl_cmd = container_of(se_cmd,
struct tcm_loop_cmd, tl_se_cmd);
diff --git a/drivers/target/target_core_alua.c b/drivers/target/target_core_alua.c
index 5517c7dd5144..3bb921345bce 100644
--- a/drivers/target/target_core_alua.c
+++ b/drivers/target/target_core_alua.c
@@ -123,7 +123,7 @@ target_emulate_report_referrals(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
@@ -255,7 +255,7 @@ target_emulate_report_target_port_groups(struct se_cmd *cmd)
}
transport_kunmap_data_sg(cmd);
- target_complete_cmd_with_length(cmd, GOOD, rd_len + 4);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, rd_len + 4);
return 0;
}
@@ -424,7 +424,7 @@ target_emulate_set_target_port_groups(struct se_cmd *cmd)
out:
transport_kunmap_data_sg(cmd);
if (!rc)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return rc;
}
diff --git a/drivers/target/target_core_iblock.c b/drivers/target/target_core_iblock.c
index d6fdd1c61f90..deb2b8b64d20 100644
--- a/drivers/target/target_core_iblock.c
+++ b/drivers/target/target_core_iblock.c
@@ -474,7 +474,7 @@ iblock_execute_zero_out(struct block_device *bdev, struct se_cmd *cmd)
if (ret)
return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
diff --git a/drivers/target/target_core_pr.c b/drivers/target/target_core_pr.c
index 6fd5fec95539..4b94b085625b 100644
--- a/drivers/target/target_core_pr.c
+++ b/drivers/target/target_core_pr.c
@@ -234,7 +234,7 @@ target_scsi2_reservation_release(struct se_cmd *cmd)
out_unlock:
spin_unlock(&dev->dev_reservation_lock);
out:
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
@@ -297,7 +297,7 @@ target_scsi2_reservation_reserve(struct se_cmd *cmd)
spin_unlock(&dev->dev_reservation_lock);
out:
if (!ret)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return ret;
}
@@ -3676,7 +3676,7 @@ target_scsi3_emulate_pr_out(struct se_cmd *cmd)
}
if (!ret)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return ret;
}
@@ -4073,7 +4073,7 @@ target_scsi3_emulate_pr_in(struct se_cmd *cmd)
}
if (!ret)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return ret;
}
diff --git a/drivers/target/target_core_pscsi.c b/drivers/target/target_core_pscsi.c
index dac44caf77a3..fd617bc4113e 100644
--- a/drivers/target/target_core_pscsi.c
+++ b/drivers/target/target_core_pscsi.c
@@ -588,7 +588,7 @@ static void pscsi_destroy_device(struct se_device *dev)
}
}
-static void pscsi_complete_cmd(struct se_cmd *cmd, u8 scsi_status,
+static void pscsi_complete_cmd(struct se_cmd *cmd, enum sam_status scsi_status,
unsigned char *req_sense)
{
struct pscsi_dev_virt *pdv = PSCSI_DEV(cmd->se_dev);
@@ -1044,7 +1044,7 @@ static void pscsi_req_done(struct request *req, blk_status_t status)
struct se_cmd *cmd = req->end_io_data;
struct pscsi_plugin_task *pt = cmd->priv;
int result = scsi_req(req)->result;
- u8 scsi_status = status_byte(result) << 1;
+ enum sam_status scsi_status = status_byte(result) << 1;
if (scsi_status != SAM_STAT_GOOD) {
pr_debug("PSCSI Status Byte exception at cmd: %p CDB:"
diff --git a/drivers/target/target_core_sbc.c b/drivers/target/target_core_sbc.c
index 7b07e557dc8d..b32f4ee88e79 100644
--- a/drivers/target/target_core_sbc.c
+++ b/drivers/target/target_core_sbc.c
@@ -67,7 +67,7 @@ sbc_emulate_readcapacity(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
}
- target_complete_cmd_with_length(cmd, GOOD, 8);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, 8);
return 0;
}
@@ -130,7 +130,7 @@ sbc_emulate_readcapacity_16(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
}
- target_complete_cmd_with_length(cmd, GOOD, 32);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, 32);
return 0;
}
@@ -202,14 +202,14 @@ sbc_execute_write_same_unmap(struct se_cmd *cmd)
return ret;
}
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
static sense_reason_t
sbc_emulate_noop(struct se_cmd *cmd)
{
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
@@ -1245,7 +1245,7 @@ sbc_execute_unmap(struct se_cmd *cmd)
err:
transport_kunmap_data_sg(cmd);
if (!ret)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return ret;
}
diff --git a/drivers/target/target_core_spc.c b/drivers/target/target_core_spc.c
index 70a661801cb9..0756a690ea84 100644
--- a/drivers/target/target_core_spc.c
+++ b/drivers/target/target_core_spc.c
@@ -750,7 +750,7 @@ spc_emulate_inquiry(struct se_cmd *cmd)
kfree(buf);
if (!ret)
- target_complete_cmd_with_length(cmd, GOOD, len);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, len);
return ret;
}
@@ -1104,7 +1104,7 @@ static sense_reason_t spc_emulate_modesense(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
}
- target_complete_cmd_with_length(cmd, GOOD, length);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, length);
return 0;
}
@@ -1122,7 +1122,7 @@ static sense_reason_t spc_emulate_modeselect(struct se_cmd *cmd)
int i;
if (!cmd->data_length) {
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
@@ -1165,7 +1165,7 @@ static sense_reason_t spc_emulate_modeselect(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
if (!ret)
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return ret;
}
@@ -1198,7 +1198,7 @@ static sense_reason_t spc_emulate_request_sense(struct se_cmd *cmd)
memcpy(rbuf, buf, min_t(u32, sizeof(buf), cmd->data_length));
transport_kunmap_data_sg(cmd);
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
@@ -1265,7 +1265,7 @@ sense_reason_t spc_emulate_report_luns(struct se_cmd *cmd)
transport_kunmap_data_sg(cmd);
}
- target_complete_cmd_with_length(cmd, GOOD, 8 + lun_count * 8);
+ target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, 8 + lun_count * 8);
return 0;
}
EXPORT_SYMBOL(spc_emulate_report_luns);
@@ -1273,7 +1273,7 @@ EXPORT_SYMBOL(spc_emulate_report_luns);
static sense_reason_t
spc_emulate_testunitready(struct se_cmd *cmd)
{
- target_complete_cmd(cmd, GOOD);
+ target_complete_cmd(cmd, SAM_STAT_GOOD);
return 0;
}
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
index 8fbfe75c5744..b55db3a1f94b 100644
--- a/drivers/target/target_core_transport.c
+++ b/drivers/target/target_core_transport.c
@@ -855,7 +855,7 @@ static bool target_cmd_interrupted(struct se_cmd *cmd)
}
/* May be called from interrupt context so must not sleep. */
-void target_complete_cmd(struct se_cmd *cmd, u8 scsi_status)
+void target_complete_cmd(struct se_cmd *cmd, enum sam_status scsi_status)
{
struct se_wwn *wwn = cmd->se_sess->se_tpg->se_tpg_wwn;
int success, cpu;
@@ -910,7 +910,8 @@ void target_set_cmd_data_length(struct se_cmd *cmd, int length)
}
EXPORT_SYMBOL(target_set_cmd_data_length);
-void target_complete_cmd_with_length(struct se_cmd *cmd, u8 scsi_status, int length)
+void target_complete_cmd_with_length(struct se_cmd *cmd,
+ enum sam_status scsi_status, int length)
{
if (scsi_status == SAM_STAT_GOOD ||
cmd->se_cmd_flags & SCF_TREAT_READ_AS_NORMAL) {
diff --git a/drivers/target/target_core_xcopy.c b/drivers/target/target_core_xcopy.c
index d31ed071cb08..44d76c304701 100644
--- a/drivers/target/target_core_xcopy.c
+++ b/drivers/target/target_core_xcopy.c
@@ -1011,7 +1011,7 @@ static sense_reason_t target_rcr_operating_parameters(struct se_cmd *se_cmd)
put_unaligned_be32(42, &p[0]);
transport_kunmap_data_sg(se_cmd);
- target_complete_cmd(se_cmd, GOOD);
+ target_complete_cmd(se_cmd, SAM_STAT_GOOD);
return TCM_NO_SENSE;
}
diff --git a/include/target/target_core_backend.h b/include/target/target_core_backend.h
index 1f78b09bba55..15e1db779bce 100644
--- a/include/target/target_core_backend.h
+++ b/include/target/target_core_backend.h
@@ -73,9 +73,9 @@ struct sbc_ops {
int transport_backend_register(const struct target_backend_ops *);
void target_backend_unregister(const struct target_backend_ops *);
-void target_complete_cmd(struct se_cmd *, u8);
+void target_complete_cmd(struct se_cmd *, enum sam_status);
void target_set_cmd_data_length(struct se_cmd *, int);
-void target_complete_cmd_with_length(struct se_cmd *, u8, int);
+void target_complete_cmd_with_length(struct se_cmd *, enum sam_status, int);
void transport_copy_sense_to_cmd(struct se_cmd *, unsigned char *);
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h
index d1f7d2a45354..68accab36b3e 100644
--- a/include/target/target_core_base.h
+++ b/include/target/target_core_base.h
@@ -8,6 +8,7 @@
#include <linux/percpu-refcount.h>
#include <linux/semaphore.h> /* struct semaphore */
#include <linux/completion.h>
+#include <scsi/scsi_proto.h>
#define TARGET_CORE_VERSION "v5.0"
@@ -453,7 +454,7 @@ enum target_core_dif_check {
struct se_cmd {
/* SAM response code being sent to initiator */
- u8 scsi_status;
+ enum sam_status scsi_status;
u8 scsi_asc;
u8 scsi_ascq;
u16 scsi_sense_length;
next prev parent reply other threads:[~2021-04-20 0:09 UTC|newest]
Thread overview: 158+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-20 0:06 [PATCH 000/117] Make better use of static type checking Bart Van Assche
2021-04-20 0:06 ` [PATCH 001/117] libsas: Introduce more SAM status code aliases in enum exec_status Bart Van Assche
2021-04-20 0:06 ` [PATCH 002/117] Introduce enums for the SAM, message, host and driver status codes Bart Van Assche
2021-04-20 9:23 ` Steffen Maier
2021-04-20 14:59 ` Bart Van Assche
2021-04-20 0:06 ` [PATCH 003/117] Change the type of the second argument of scsi_host_complete_all_commands() Bart Van Assche
2021-04-20 0:06 ` [PATCH 004/117] libiscsi: Use the host_status enum Bart Van Assche
2021-05-06 16:51 ` Lee Duncan
2021-04-20 0:06 ` [PATCH 005/117] libsas: Use the host_status and sam_status enums Bart Van Assche
2021-04-20 0:06 ` Bart Van Assche [this message]
2021-04-20 0:06 ` [PATCH 007/117] lpfc: Reformat four comparisons Bart Van Assche
2021-04-21 20:22 ` James Smart
2021-04-20 0:06 ` [PATCH 008/117] fc: Add a compile-time structure size check Bart Van Assche
2021-04-20 0:06 ` [PATCH 009/117] iscsi: " Bart Van Assche
2021-05-06 16:52 ` Lee Duncan
2021-04-20 0:06 ` [PATCH 010/117] ufs: " Bart Van Assche
2021-05-06 23:56 ` Can Guo
2021-04-20 0:06 ` [PATCH 011/117] Introduce the scsi_status union Bart Van Assche
2021-05-06 17:04 ` Lee Duncan
2021-05-07 0:04 ` Can Guo
2021-04-20 0:07 ` [PATCH 012/117] block: Convert SCSI and bsg code to " Bart Van Assche
2021-04-20 0:07 ` [PATCH 013/117] core: Convert " Bart Van Assche
2021-04-20 0:07 ` [PATCH 014/117] ch: Pass union scsi_status to driver_byte() Bart Van Assche
2021-04-20 0:07 ` [PATCH 015/117] sd: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 016/117] sr: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 017/117] st: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 018/117] sg: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 019/117] 3w*: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 020/117] 53c700: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 021/117] BusLogic: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 022/117] NCR5380: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 023/117] a100u2w: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 024/117] aacraid: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 025/117] acornscsi: Annotate fallthrough Bart Van Assche
2021-04-20 0:07 ` [PATCH 026/117] acornscsi: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 027/117] advansys: " Bart Van Assche
2021-04-20 1:49 ` Matthew Wilcox
2021-04-20 2:27 ` Douglas Gilbert
2021-04-20 3:20 ` Bart Van Assche
2021-04-20 3:17 ` Bart Van Assche
2021-04-20 3:23 ` Matthew Wilcox
2021-04-20 15:01 ` Bart Van Assche
2021-04-20 0:07 ` [PATCH 028/117] aha*: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 029/117] aic*: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 030/117] arcmsr: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 031/117] ata: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 032/117] atp870u: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 033/117] be2iscsi: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 034/117] bfa: Use type int32_t to represent a signed integer Bart Van Assche
2021-04-20 0:07 ` [PATCH 035/117] bfa: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 036/117] bnx2fc: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 037/117] cdrom: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 038/117] csiostor: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 039/117] cxlflash: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 040/117] dc395x: Use the set_{host,msg,status}_byte() functions Bart Van Assche
2021-04-20 0:07 ` [PATCH 041/117] dc395x: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 042/117] dpt_i2o: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 043/117] esas2r: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 044/117] esp_scsi: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 045/117] fas216: Fix two source code comments Bart Van Assche
2021-04-20 0:07 ` [PATCH 046/117] fas216: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 047/117] fc: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 048/117] fdomain: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 049/117] firewire: sbp2: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 050/117] fnic: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 051/117] hpsa: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 052/117] hptiop: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 053/117] ib_srp: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 054/117] ibmvfc: Fix the documentation of the return value of ibmvfc_host_chkready() Bart Van Assche
2021-04-20 0:07 ` [PATCH 055/117] ibmvfc: Convert to the scsi_status union Bart Van Assche
2021-04-20 0:07 ` [PATCH 056/117] ibmvscsi: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 057/117] ide: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 058/117] imm: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 059/117] initio: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 060/117] ipr: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 061/117] ips: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 062/117] iscsi: " Bart Van Assche
2021-05-06 18:54 ` Lee Duncan
2021-04-20 0:07 ` [PATCH 063/117] libfc: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 064/117] sas: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 065/117] lpfc: " Bart Van Assche
2021-04-21 20:26 ` James Smart
2021-04-20 0:07 ` [PATCH 066/117] mac53c94: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 067/117] megaraid: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 068/117] mesh: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 069/117] message: fusion: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 070/117] mpt3sas: " Bart Van Assche
2021-04-20 0:07 ` [PATCH 071/117] mvumi: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 072/117] myrb: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 073/117] myrs: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 074/117] ncr53c8xx: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 075/117] nfsd: " Bart Van Assche
2021-04-20 14:36 ` Chuck Lever III
2021-04-20 16:44 ` Bart Van Assche
2021-04-21 14:22 ` Chuck Lever III
2021-04-21 16:12 ` Bart Van Assche
2021-04-21 16:27 ` Chuck Lever III
2021-04-20 0:08 ` [PATCH 076/117] nsp32: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 077/117] pcmcia: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 078/117] pktcdvd: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 079/117] pmcraid: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 080/117] ppa: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 081/117] ps3rom: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 082/117] qedf: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 083/117] qedi: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 084/117] qla1280: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 085/117] qla2xxx: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 086/117] qla4xxx: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 087/117] qlogicfas408: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 088/117] qlogicpti: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 089/117] s390/zfcp: " Bart Van Assche
2021-04-20 0:08 ` [PATCH 090/117] scsi_debug: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 091/117] smartpqi: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 092/117] snic: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 093/117] staging: " Bart Van Assche
2021-04-20 7:47 ` Greg Kroah-Hartman
2021-04-20 15:02 ` Bart Van Assche
2021-04-20 15:06 ` Greg Kroah-Hartman
2021-04-20 2:13 ` [PATCH 094/117] stex: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 095/117] storvsc: " Bart Van Assche
2021-04-20 19:39 ` Wei Liu
2021-04-20 2:13 ` [PATCH 096/117] sym53c8xx_2: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 097/117] target: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 098/117] ufs: Remove an unused structure member Bart Van Assche
2021-05-06 23:57 ` Can Guo
2021-04-20 2:13 ` [PATCH 099/117] ufs: Remove a local variable Bart Van Assche
2021-05-06 23:56 ` Can Guo
2021-04-20 2:13 ` [PATCH 100/117] ufs: Use enum sam_status where appropriate Bart Van Assche
2021-05-07 0:01 ` Can Guo
2021-05-07 0:01 ` Can Guo
2021-04-20 2:13 ` [PATCH 101/117] ufs: Remove an assignment from ufshcd_transfer_rsp_status() Bart Van Assche
2021-05-07 0:03 ` Can Guo
2021-04-20 2:13 ` [PATCH 102/117] ufs: Convert to the scsi_status union Bart Van Assche
2021-05-07 0:09 ` Can Guo
2021-05-07 3:35 ` Bart Van Assche
2021-05-07 4:48 ` Can Guo
2021-04-20 2:13 ` [PATCH 103/117] usb: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 104/117] virtio-scsi: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 105/117] vmw_pvscsi: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 106/117] wd33c93: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 107/117] wd719x: " Bart Van Assche
2021-04-20 2:13 ` [PATCH 108/117] xen-scsiback: Pass union status to the {status,msg,host,driver}_byte() macros Bart Van Assche
2021-04-20 2:13 ` [PATCH 109/117] xen-scsifront: Convert to the scsi_status union Bart Van Assche
2021-04-20 2:13 ` [PATCH 110/117] Finalize the switch from 'int' to 'union scsi_status' Bart Van Assche
2021-05-06 18:55 ` Lee Duncan
2021-05-07 0:24 ` Can Guo
2021-04-20 2:13 ` [PATCH 111/117] Use the scsi_status union more widely Bart Van Assche
2021-04-20 2:13 ` [PATCH 112/117] Change the return type of scsi_execute() into union scsi_status Bart Van Assche
2021-04-20 2:13 ` [PATCH 113/117] Change the return type of scsi_execute_req() " Bart Van Assche
2021-04-20 2:13 ` [PATCH 114/117] Change the return type of scsi_test_unit_ready() " Bart Van Assche
2021-04-20 2:14 ` [PATCH 115/117] Change the return types of scsi_mode_sense() and sd_do_mode_sense() Bart Van Assche
2021-04-20 2:14 ` [PATCH 116/117] Change the return type of scsi_mode_select() into union scsi_status Bart Van Assche
2021-04-20 2:14 ` [PATCH 117/117] Change the return type of ioctl_internal_command() " Bart Van Assche
2021-04-20 6:04 ` [PATCH 000/117] Make better use of static type checking Hannes Reinecke
2021-04-20 16:12 ` Bart Van Assche
2021-04-20 17:11 ` Hannes Reinecke
2021-04-20 21:10 ` Bart Van Assche
2021-04-20 17:19 ` Douglas Gilbert
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=20210420000845.25873-7-bvanassche@acm.org \
--to=bvanassche@acm.org \
--cc=hch@lst.de \
--cc=jejb@linux.vnet.ibm.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=michael.christie@oracle.com \
/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