On 02/03/2023 12:50, Jacopo Mondi wrote:
Hi Tomi
On Thu, Mar 02, 2023 at 12:07:52PM +0200, Tomi Valkeinen wrote:
We don't do a proper job at freeing resources in cal_camerarx_create's
error paths.
Fix these, and also switch the phy allcation from kzalloc to
devm_kzalloc to simplify the code further.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxxxxxxxxxxxx>
---
drivers/media/platform/ti/cal/cal-camerarx.c | 23 +++++++++++---------
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/drivers/media/platform/ti/cal/cal-camerarx.c b/drivers/media/platform/ti/cal/cal-camerarx.c
index 267089b0fea0..97208d542f9e 100644
--- a/drivers/media/platform/ti/cal/cal-camerarx.c
+++ b/drivers/media/platform/ti/cal/cal-camerarx.c
@@ -864,7 +864,7 @@ struct cal_camerarx *cal_camerarx_create(struct cal_dev *cal,
unsigned int i;
int ret;
- phy = kzalloc(sizeof(*phy), GFP_KERNEL);
+ phy = devm_kzalloc(cal->dev, sizeof(*phy), GFP_KERNEL);
if (!phy)
return ERR_PTR(-ENOMEM);
@@ -882,7 +882,7 @@ struct cal_camerarx *cal_camerarx_create(struct cal_dev *cal,
if (IS_ERR(phy->base)) {
cal_err(cal, "failed to ioremap\n");
ret = PTR_ERR(phy->base);
- goto error;
+ goto err_destroy_mutex;
I have your previous version applied, I'm probably on a different base
as I don't see any phy->mutex at all!
The "media: ti: cal: Use subdev state" drops the mutex, but in v3 that
patch comes after this one. So here we still have the mutex, but it'll
go away in the next patch.
Tomi