Re: [PATCH v3 1/9] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs()

From: Shuai Xue
Date: Sun Mar 09 2025 - 21:42:30 EST




在 2025/3/9 17:10, Markus Elfring 写道:

+++ b/drivers/dma/idxd/init.c

@@ -203,7 +201,6 @@ static int idxd_setup_wqs(struct idxd_device *idxd)
wq->enqcmds_retries = IDXD_ENQCMDS_RETRIES;
wq->wqcfg = kzalloc_node(idxd->wqcfg_size, GFP_KERNEL, dev_to_node(dev));
if (!wq->wqcfg) {
- put_device(conf_dev);
rc = -ENOMEM;
goto err;
}

I suggest to move such an error code assignment also to the end of this function implementation.


I prefer to set error code before jumping to error handling label
so that we can extend/change the error code in any future path.

Regards,
Markus

Thanks for valuable comments.
Best Regards,
Shuai