]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
scsi: target: Use driver completion preference by default
authorMike Christie <michael.christie@oracle.com>
Sun, 22 Feb 2026 23:27:02 +0000 (17:27 -0600)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sun, 1 Mar 2026 02:04:02 +0000 (21:04 -0500)
This has us use the driver's completion preference by default. There is
no behavior changes with this patch and we queue completion to LIO's
completion workqueue by default.

Signed-off-by: Mike Christie <michael.christie@oracle.com>
Link: https://patch.msgid.link/20260222232946.7637-3-michael.christie@oracle.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
12 files changed:
drivers/infiniband/ulp/srpt/ib_srpt.c
drivers/scsi/elx/efct/efct_lio.c
drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
drivers/scsi/qla2xxx/tcm_qla2xxx.c
drivers/target/iscsi/iscsi_target_configfs.c
drivers/target/loopback/tcm_loop.c
drivers/target/sbp/sbp_target.c
drivers/target/target_core_device.c
drivers/target/tcm_fc/tfc_conf.c
drivers/usb/gadget/function/f_tcm.c
drivers/vhost/scsi.c
drivers/xen/xen-scsiback.c

index e00b87acf481ac8b33ffe573a4597bad941c72f6..9aec5d80117f1f312856326c6e2d8df788053686 100644 (file)
@@ -3925,6 +3925,7 @@ static const struct target_core_fabric_ops srpt_template = {
        .tfc_wwn_attrs                  = srpt_wwn_attrs,
        .tfc_tpg_attrib_attrs           = srpt_tpg_attrib_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index d6e35ee8fee0152431ac3f1966250d410522b244..67d686dd6fb33a759f9caa2c25682fc38d33ac74 100644 (file)
@@ -1612,6 +1612,7 @@ static const struct target_core_fabric_ops efct_lio_ops = {
        .sess_get_initiator_sid         = NULL,
        .tfc_tpg_base_attrs             = efct_lio_tpg_attrs,
        .tfc_tpg_attrib_attrs           = efct_lio_tpg_attrib_attrs,
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
@@ -1650,6 +1651,7 @@ static const struct target_core_fabric_ops efct_lio_npiv_ops = {
        .tfc_tpg_base_attrs             = efct_lio_npiv_tpg_attrs,
        .tfc_tpg_attrib_attrs           = efct_lio_npiv_tpg_attrib_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index b395a9d7c64017438452ac22f3db1a09e33cff50..61f68280076543f50f58e81fb48601160dc38661 100644 (file)
@@ -3968,6 +3968,7 @@ static const struct target_core_fabric_ops ibmvscsis_ops = {
 
        .tfc_wwn_attrs                  = ibmvscsis_wwn_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index 28df9025def04ceca2d24c1e373d54a1cffa6469..3be23ed067e63099f17c596dc6c1bf25f3f9c6bc 100644 (file)
@@ -1841,6 +1841,7 @@ static const struct target_core_fabric_ops tcm_qla2xxx_ops = {
        .tfc_tpg_base_attrs             = tcm_qla2xxx_tpg_attrs,
        .tfc_tpg_attrib_attrs           = tcm_qla2xxx_tpg_attrib_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
@@ -1881,6 +1882,7 @@ static const struct target_core_fabric_ops tcm_qla2xxx_npiv_ops = {
 
        .tfc_wwn_attrs                  = tcm_qla2xxx_wwn_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index efe8cdb2006096004cca76127a7f3cce5fc925cd..704ec94383c3c4dcac4ec1266519e79908eda2a8 100644 (file)
@@ -1591,6 +1591,7 @@ const struct target_core_fabric_ops iscsi_ops = {
 
        .write_pending_must_be_called   = 1,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index d668bd19fd4aedd43d9e154351b1c64dd34d2298..e3b61b88471a11a2f9d4f494a05f3ddcd6ef3ecd 100644 (file)
@@ -1107,6 +1107,7 @@ static const struct target_core_fabric_ops loop_ops = {
        .tfc_wwn_attrs                  = tcm_loop_wwn_attrs,
        .tfc_tpg_base_attrs             = tcm_loop_tpg_attrs,
        .tfc_tpg_attrib_attrs           = tcm_loop_tpg_attrib_attrs,
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_QUEUE_SUBMIT,
        .direct_submit_supp             = 0,
 };
index ad1da7edbb08998e84ce3cea11688e0a506d5b99..896fc0f0379f7703fc6ba52cb9af5895ab127a02 100644 (file)
@@ -2278,6 +2278,7 @@ static const struct target_core_fabric_ops sbp_ops = {
        .tfc_tpg_base_attrs             = sbp_tpg_base_attrs,
        .tfc_tpg_attrib_attrs           = sbp_tpg_attrib_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index 883a866e96ab242c95ca7c022da3f747f7c897df..fbc8ab65372ef4818a58e9d20c8e95b375b69ce4 100644 (file)
@@ -813,7 +813,7 @@ struct se_device *target_alloc_device(struct se_hba *hba, const char *name)
                                DA_UNMAP_ZEROES_DATA_DEFAULT;
        dev->dev_attrib.max_write_same_len = DA_MAX_WRITE_SAME_LEN;
        dev->dev_attrib.submit_type = TARGET_FABRIC_DEFAULT_SUBMIT;
-       dev->dev_attrib.submit_type = TARGET_QUEUE_COMPL;
+       dev->dev_attrib.submit_type = TARGET_FABRIC_DEFAULT_COMPL;
 
        /* Skip allocating lun_stats since we can't export them. */
        xcopy_lun = &dev->xcopy_lun;
index 88cf1e5a5810a1afcf72a1b110b595f758b27bed..3920fb02d9fc0f3f585db4afb3cb8e24e078b6e8 100644 (file)
@@ -434,6 +434,7 @@ static const struct target_core_fabric_ops ft_fabric_ops = {
        .tfc_wwn_attrs                  = ft_wwn_attrs,
        .tfc_tpg_nacl_base_attrs        = ft_nacl_base_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index ec050d8f99f147ccb7aac729ffe2dcc6db8738c2..8d36f6783f87778bd0826f4fa82d3ad5518dc658 100644 (file)
@@ -2016,6 +2016,7 @@ static const struct target_core_fabric_ops usbg_ops = {
        .tfc_wwn_attrs                  = usbg_wwn_attrs,
        .tfc_tpg_base_attrs             = usbg_base_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };
index 1c22880e722675e9144401d47e87c3e8967bc192..903d4c5be2b26b24903d43ce95c129e26a8c49b0 100644 (file)
@@ -2950,6 +2950,7 @@ static const struct target_core_fabric_ops vhost_scsi_ops = {
        .tfc_tpg_base_attrs             = vhost_scsi_tpg_attrs,
        .tfc_tpg_attrib_attrs           = vhost_scsi_tpg_attrib_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_QUEUE_SUBMIT,
        .direct_submit_supp             = 1,
 };
index 3035c7d0f1b77260ae39d45a96432f95e130c269..e33f95c91b096b4d855cf37feb3505444e32ca24 100644 (file)
@@ -1832,6 +1832,7 @@ static const struct target_core_fabric_ops scsiback_ops = {
        .tfc_tpg_base_attrs             = scsiback_tpg_attrs,
        .tfc_tpg_param_attrs            = scsiback_param_attrs,
 
+       .default_compl_type             = TARGET_QUEUE_COMPL,
        .default_submit_type            = TARGET_DIRECT_SUBMIT,
        .direct_submit_supp             = 1,
 };