diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/scsi/qla2xxx/tcm_qla2xxx.c | 13 |
1 files 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; } |