On Thu, Feb 06, 2025 at 05:25:22AM +0000, Jiasheng Jiang wrote: > Replace kmalloc_array() with kcalloc() to avoid old (dirty) data being > used/freed. Used/freed where? > > Fixes: 61d8658b4a43 ("scsi: qedf: Add QLogic FastLinQ offload FCoE driver framework.") > Cc: <stable@xxxxxxxxxxxxxxx> # v5.10+ > Signed-off-by: Jiasheng Jiang <jiashengjiangcool@xxxxxxxxx> > --- > drivers/scsi/qedf/qedf_io.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/scsi/qedf/qedf_io.c b/drivers/scsi/qedf/qedf_io.c > index fcfc3bed02c6..d52057b97a4f 100644 > --- a/drivers/scsi/qedf/qedf_io.c > +++ b/drivers/scsi/qedf/qedf_io.c > @@ -254,9 +254,7 @@ struct qedf_cmd_mgr *qedf_cmd_mgr_alloc(struct qedf_ctx *qedf) > } > > /* Allocate pool of io_bdts - one for each qedf_ioreq */ > - cmgr->io_bdt_pool = kmalloc_array(num_ios, sizeof(struct io_bdt *), > - GFP_KERNEL); > - > + cmgr->io_bdt_pool = kcalloc(num_ios, sizeof(*cmgr->io_bdt_pool), GFP_KERNEL); This is just an array that is then properly all initialized a few lines below this. So why does this need to be zeroed out at all? thanks, greg k-h