scsi: target: core: Use RTPI from target port
authorRoman Bolshakov <r.bolshakov@yadro.com>
Wed, 1 Mar 2023 08:45:10 +0000 (11:45 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 10 Mar 2023 02:29:23 +0000 (21:29 -0500)
Replace all references to RTPI from LUN field to se_portal_group field.  It
introduces consistent reporting of RTPI for all LUNs and all target ports.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
Signed-off-by: Dmitry Bogdanov <d.bogdanov@yadro.com>
Link: https://lore.kernel.org/r/20230301084512.21956-3-d.bogdanov@yadro.com
Reviewed-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/target_core_alua.c
drivers/target/target_core_device.c
drivers/target/target_core_pr.c
drivers/target/target_core_spc.c
drivers/target/target_core_stat.c

index c8470e7c0e108d2634ca2209f108e89be27b41d2..3372856319f72ffed8262b19a264ec05b118e5b4 100644 (file)
@@ -225,7 +225,7 @@ target_emulate_report_target_port_groups(struct se_cmd *cmd)
                        /*
                         * Set RELATIVE TARGET PORT IDENTIFIER
                         */
-                       put_unaligned_be16(lun->lun_rtpi, &buf[off]);
+                       put_unaligned_be16(lun->lun_tpg->tpg_rtpi, &buf[off]);
                        off += 2;
                        rd_len += 4;
                }
@@ -399,7 +399,7 @@ target_emulate_set_target_port_groups(struct se_cmd *cmd)
                        spin_lock(&dev->se_port_lock);
                        list_for_each_entry(lun, &dev->dev_sep_list,
                                                        lun_dev_link) {
-                               if (lun->lun_rtpi != rtpi)
+                               if (lun->lun_tpg->tpg_rtpi != rtpi)
                                        continue;
 
                                // XXX: racy unlock
index f6e58410ec3f9ced3e2844b9035fa8d13d71225c..93f7f050fdf1b97749f67e78e9d01f21615ba835 100644 (file)
@@ -223,7 +223,7 @@ struct se_dev_entry *core_get_se_deve_from_rtpi(
                                tpg->se_tpg_tfo->fabric_name);
                        continue;
                }
-               if (lun->lun_rtpi != rtpi)
+               if (lun->lun_tpg->tpg_rtpi != rtpi)
                        continue;
 
                kref_get(&deve->pr_kref);
index 1493b1d01194fc920a3eba5d1fb53acdf6a3b17f..d19ec4e6a4c0d2b57dc10fdc26c7b1bfc1cede27 100644 (file)
@@ -663,7 +663,7 @@ static struct t10_pr_registration *__core_scsi3_do_alloc_registration(
        }
        pr_reg->pr_res_mapped_lun = mapped_lun;
        pr_reg->pr_aptpl_target_lun = lun->unpacked_lun;
-       pr_reg->tg_pt_sep_rtpi = lun->lun_rtpi;
+       pr_reg->tg_pt_sep_rtpi = lun->lun_tpg->tpg_rtpi;
        pr_reg->pr_res_key = sa_res_key;
        pr_reg->pr_reg_all_tg_pt = all_tg_pt;
        pr_reg->pr_reg_aptpl = aptpl;
@@ -967,7 +967,7 @@ static int __core_scsi3_check_aptpl_registration(
                        rcu_read_unlock();
 
                        pr_reg->pr_reg_nacl = nacl;
-                       pr_reg->tg_pt_sep_rtpi = lun->lun_rtpi;
+                       pr_reg->tg_pt_sep_rtpi = lun->lun_tpg->tpg_rtpi;
                        list_del(&pr_reg->pr_reg_aptpl_list);
                        spin_unlock(&pr_tmpl->aptpl_reg_lock);
                        /*
@@ -1567,7 +1567,7 @@ core_scsi3_decode_spec_i_port(
                         */
                        if (tmp_tpg->proto_id != proto_ident)
                                continue;
-                       dest_rtpi = tmp_lun->lun_rtpi;
+                       dest_rtpi = tmp_lun->lun_tpg->tpg_rtpi;
 
                        iport_ptr = NULL;
                        i_str = target_parse_pr_out_transport_id(tmp_tpg,
@@ -3225,7 +3225,7 @@ core_scsi3_emulate_pro_register_and_move(struct se_cmd *cmd, u64 res_key,
 
        spin_lock(&dev->se_port_lock);
        list_for_each_entry(tmp_lun, &dev->dev_sep_list, lun_dev_link) {
-               if (tmp_lun->lun_rtpi != rtpi)
+               if (tmp_lun->lun_tpg->tpg_rtpi != rtpi)
                        continue;
                dest_se_tpg = tmp_lun->lun_tpg;
                dest_tf_ops = dest_se_tpg->se_tpg_tfo;
index fcc7b10a7ae3547e1ebc3a61cc735abae94c8ba9..5bae45c3fb65ab914e114fbb3f37af1064dca6e5 100644 (file)
@@ -317,7 +317,7 @@ check_t10_vend_desc:
                /* Skip over Obsolete field in RTPI payload
                 * in Table 472 */
                off += 2;
-               put_unaligned_be16(lun->lun_rtpi, &buf[off]);
+               put_unaligned_be16(lun->lun_tpg->tpg_rtpi, &buf[off]);
                off += 2;
                len += 8; /* Header size + Designation descriptor */
                /*
index f85ee5b0fd80013b462a1793c59c666cdec498cf..c42cbde8a31b3a338da412f7ec89751c0228af48 100644 (file)
@@ -455,7 +455,7 @@ static ssize_t target_stat_port_indx_show(struct config_item *item, char *page)
        rcu_read_lock();
        dev = rcu_dereference(lun->lun_se_dev);
        if (dev)
-               ret = snprintf(page, PAGE_SIZE, "%u\n", lun->lun_rtpi);
+               ret = snprintf(page, PAGE_SIZE, "%u\n", lun->lun_tpg->tpg_rtpi);
        rcu_read_unlock();
        return ret;
 }
@@ -561,7 +561,7 @@ static ssize_t target_stat_tgt_port_indx_show(struct config_item *item,
        rcu_read_lock();
        dev = rcu_dereference(lun->lun_se_dev);
        if (dev)
-               ret = snprintf(page, PAGE_SIZE, "%u\n", lun->lun_rtpi);
+               ret = snprintf(page, PAGE_SIZE, "%u\n", lun->lun_tpg->tpg_rtpi);
        rcu_read_unlock();
        return ret;
 }
@@ -579,7 +579,7 @@ static ssize_t target_stat_tgt_port_name_show(struct config_item *item,
        if (dev)
                ret = snprintf(page, PAGE_SIZE, "%sPort#%u\n",
                        tpg->se_tpg_tfo->fabric_name,
-                       lun->lun_rtpi);
+                       lun->lun_tpg->tpg_rtpi);
        rcu_read_unlock();
        return ret;
 }