On Wed, Nov 17, 2021 at 03:39:28PM -0600, Mike Christie wrote: > This fixes the sparse warnings about t10_alua_tg_pt_gp accesses in > target_core_spc.c from: > > commit 7324f47d4293 ("scsi: target: Replace lun_tg_pt_gp_lock with rcu in > I/O path") > > That patch replaced the lun_tg_pt_gp_lock use in the IO path, but didn't > update the INQUIRY code. > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > Signed-off-by: Mike Christie <michael.christie@xxxxxxxxxx> > --- > drivers/target/target_core_spc.c | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/drivers/target/target_core_spc.c b/drivers/target/target_core_spc.c > index 22703a0dbd07..4c76498d3fb0 100644 > --- a/drivers/target/target_core_spc.c > +++ b/drivers/target/target_core_spc.c > @@ -40,11 +40,11 @@ static void spc_fill_alua_data(struct se_lun *lun, unsigned char *buf) > * > * See spc4r17 section 6.4.2 Table 135 > */ > - spin_lock(&lun->lun_tg_pt_gp_lock); > - tg_pt_gp = lun->lun_tg_pt_gp; > + rcu_read_lock(); > + tg_pt_gp = rcu_dereference(lun->lun_tg_pt_gp); > if (tg_pt_gp) > buf[5] |= tg_pt_gp->tg_pt_gp_alua_access_type; > - spin_unlock(&lun->lun_tg_pt_gp_lock); > + rcu_read_unlock(); > } > > static u16 > @@ -325,14 +325,14 @@ spc_emulate_evpd_83(struct se_cmd *cmd, unsigned char *buf) > * Get the PROTOCOL IDENTIFIER as defined by spc4r17 > * section 7.5.1 Table 362 > */ > - spin_lock(&lun->lun_tg_pt_gp_lock); > - tg_pt_gp = lun->lun_tg_pt_gp; > + rcu_read_lock(); > + tg_pt_gp = rcu_dereference(lun->lun_tg_pt_gp); > if (!tg_pt_gp) { > - spin_unlock(&lun->lun_tg_pt_gp_lock); > + rcu_read_unlock(); > goto check_lu_gp; > } > tg_pt_gp_id = tg_pt_gp->tg_pt_gp_id; > - spin_unlock(&lun->lun_tg_pt_gp_lock); > + rcu_read_unlock(); > > buf[off] = tpg->proto_id << 4; > buf[off++] |= 0x1; /* CODE SET == Binary */ > -- > 2.25.1 > Looks ok, Reviewed-by: Maurizio Lombardi <mlombard@xxxxxxxxxx>