Message ID | 451016052782f18c8b52ed0f836d7ab5c69bac3d.1706431643.git.christophe.jaillet@wanadoo.fr |
---|---|
State | New |
Headers | show |
Series | phy: sunplus: Fix a memory leak in update_disc_vol() | expand |
On 28-01-24, 09:47, Christophe JAILLET wrote: > 'otp_v', allocated by nvmem_cell_read(), is leaking. > It must be freed before leaving the function to avoid a leak. > > Fixes: 99d9ccd97385 ("phy: usb: Add USB2.0 phy driver for Sunplus SP7021") > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> > --- > This patch is speculative and based on comparison on the usage of > nvmem_cell_read() in other driver. > > Review with care. > --- > drivers/phy/sunplus/phy-sunplus-usb2.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/phy/sunplus/phy-sunplus-usb2.c b/drivers/phy/sunplus/phy-sunplus-usb2.c > index 637a5fbae6d9..50f1f91ac052 100644 > --- a/drivers/phy/sunplus/phy-sunplus-usb2.c > +++ b/drivers/phy/sunplus/phy-sunplus-usb2.c > @@ -105,6 +105,8 @@ static int update_disc_vol(struct sp_usbphy *usbphy) > val = (val & ~J_DISC) | set; > writel(val, usbphy->phy_regs + CONFIG7); > > + kfree(otp_v); Looking at documentation, this should be nvmem_cell_put() see: Documentation/driver-api/nvmem.rst What do you suggest Srini? > + > return 0; > } > > -- > 2.43.0
diff --git a/drivers/phy/sunplus/phy-sunplus-usb2.c b/drivers/phy/sunplus/phy-sunplus-usb2.c index 637a5fbae6d9..50f1f91ac052 100644 --- a/drivers/phy/sunplus/phy-sunplus-usb2.c +++ b/drivers/phy/sunplus/phy-sunplus-usb2.c @@ -105,6 +105,8 @@ static int update_disc_vol(struct sp_usbphy *usbphy) val = (val & ~J_DISC) | set; writel(val, usbphy->phy_regs + CONFIG7); + kfree(otp_v); + return 0; }
'otp_v', allocated by nvmem_cell_read(), is leaking. It must be freed before leaving the function to avoid a leak. Fixes: 99d9ccd97385 ("phy: usb: Add USB2.0 phy driver for Sunplus SP7021") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> --- This patch is speculative and based on comparison on the usage of nvmem_cell_read() in other driver. Review with care. --- drivers/phy/sunplus/phy-sunplus-usb2.c | 2 ++ 1 file changed, 2 insertions(+)