On 7/14/24 3:37 AM, Dan Carpenter wrote:
[...]
+err_irq_nfb4eof:
+ ipu_idmac_put(priv->vdi_out_ch);
+err_out:
+ ipu_idmac_put(priv->vdi_in_ch_n);
+err_next:
+ ipu_idmac_put(priv->vdi_in_ch);
+err_curr:
+ ipu_idmac_put(priv->vdi_in_ch_p);
+err_prev:
+ ipu_ic_put(priv->ic);
+err_ic:
+ ipu_vdi_put(priv->vdi);
+err_vdi:
+ devm_kfree(priv->dev, eofname);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+err_eof:
+ devm_kfree(priv->dev, nfbname);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Any time we call devm_kfree() it's a red flag. Sometimes it makes sense
but I haven't looked at it closely enough to see how it makes sense
here. Is it an ordering issue where we had to do devm_free_irq() and
then we just freed oefname and nfbname for consistency and because why
not?
I think in this case, the devm_*free() can be dropped, yes.
The rest is addressed in V2. I'll wait a bit for more feedback before
sending it.
Thanks !