> On Jan 8, 2023, at 12:38 PM, Deepak R Varma <drv@xxxxxxxxx> wrote: > > Use a variable to upfront compute memory size to be allocated, instead of > repeatedly computing the memory size at different instructions. The reduced > instruction length also allows to tidy up the code. Issue identified using > the array_size_dup Coccinelle semantic patch. > > Signed-off-by: Deepak R Varma <drv@xxxxxxxxx> > --- > drivers/scsi/qla2xxx/tcm_qla2xxx.c | 13 ++++++------- > 1 file changed, 6 insertions(+), 7 deletions(-) > > diff --git a/drivers/scsi/qla2xxx/tcm_qla2xxx.c b/drivers/scsi/qla2xxx/tcm_qla2xxx.c > index 8fa0056b56dd..8024322c9c5a 100644 > --- a/drivers/scsi/qla2xxx/tcm_qla2xxx.c > +++ b/drivers/scsi/qla2xxx/tcm_qla2xxx.c > @@ -1552,6 +1552,7 @@ static const struct qla_tgt_func_tmpl tcm_qla2xxx_template = { > static int tcm_qla2xxx_init_lport(struct tcm_qla2xxx_lport *lport) > { > int rc; > + size_t map_sz; > > rc = btree_init32(&lport->lport_fcport_map); > if (rc) { > @@ -1559,17 +1560,15 @@ static int tcm_qla2xxx_init_lport(struct tcm_qla2xxx_lport *lport) > return rc; > } > > - lport->lport_loopid_map = > - vzalloc(array_size(65536, > - sizeof(struct tcm_qla2xxx_fc_loopid))); > + map_sz = array_size(65536, sizeof(struct tcm_qla2xxx_fc_loopid)); > + > + lport->lport_loopid_map = vzalloc(map_sz); > if (!lport->lport_loopid_map) { > - pr_err("Unable to allocate lport->lport_loopid_map of %zu bytes\n", > - sizeof(struct tcm_qla2xxx_fc_loopid) * 65536); > + pr_err("Unable to allocate lport->lport_loopid_map of %zu bytes\n", map_sz); > btree_destroy32(&lport->lport_fcport_map); > return -ENOMEM; > } > - pr_debug("qla2xxx: Allocated lport_loopid_map of %zu bytes\n", > - sizeof(struct tcm_qla2xxx_fc_loopid) * 65536); > + pr_debug("qla2xxx: Allocated lport_loopid_map of %zu bytes\n", map_sz); > return 0; > } > > -- > 2.34.1 > > > Reviewed-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx <mailto:himanshu.madhani@xxxxxxxxxx>> -- Himanshu Madhani Oracle Linux Engineering