diff mbox series

USB: phy: tahvo: Add check for clk_enable()

Message ID 20241215210006.4114454-1-zmw12306@gmail.com (mailing list archive)
State New
Headers show
Series USB: phy: tahvo: Add check for clk_enable() | expand

Commit Message

Mingwei Zheng Dec. 15, 2024, 9 p.m. UTC
Add check for the return value of clk_enable() to catch the potential
error.

Fixes: 9ba96ae5074c ("usb: omap1: Tahvo USB transceiver driver")
Signed-off-by: Mingwei Zheng <zmw12306@gmail.com>
Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com>
---
 drivers/usb/phy/phy-tahvo.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Comments

Greg Kroah-Hartman Dec. 16, 2024, 7:56 a.m. UTC | #1
On Sun, Dec 15, 2024 at 04:00:06PM -0500, Mingwei Zheng wrote:
> Add check for the return value of clk_enable() to catch the potential
> error.
> 
> Fixes: 9ba96ae5074c ("usb: omap1: Tahvo USB transceiver driver")
> Signed-off-by: Mingwei Zheng <zmw12306@gmail.com>
> Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com>
> ---
>  drivers/usb/phy/phy-tahvo.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/phy/phy-tahvo.c b/drivers/usb/phy/phy-tahvo.c
> index ae7bf3ff89ee..0b8801318cd2 100644
> --- a/drivers/usb/phy/phy-tahvo.c
> +++ b/drivers/usb/phy/phy-tahvo.c
> @@ -342,8 +342,11 @@ static int tahvo_usb_probe(struct platform_device *pdev)
>  	mutex_init(&tu->serialize);
>  
>  	tu->ick = devm_clk_get(&pdev->dev, "usb_l4_ick");
> -	if (!IS_ERR(tu->ick))
> -		clk_enable(tu->ick);
> +	if (!IS_ERR(tu->ick)) {
> +		ret = clk_enable(tu->ick);
> +		if (ret)
> +			return ret;
> +	}

Same questions, why the signed-off-by order and how was this found and
tested?

thanks,

greg k-h
Mingwei Zheng Dec. 18, 2024, 3:09 a.m. UTC | #2
Hi Greg,

On Mon, Dec 16, 2024 at 2:56 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Sun, Dec 15, 2024 at 04:00:06PM -0500, Mingwei Zheng wrote:
> > Add check for the return value of clk_enable() to catch the potential
> > error.
> >
> > Fixes: 9ba96ae5074c ("usb: omap1: Tahvo USB transceiver driver")
> > Signed-off-by: Mingwei Zheng <zmw12306@gmail.com>
> > Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com>
> > ---
> >  drivers/usb/phy/phy-tahvo.c | 7 +++++--
> >  1 file changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/usb/phy/phy-tahvo.c b/drivers/usb/phy/phy-tahvo.c
> > index ae7bf3ff89ee..0b8801318cd2 100644
> > --- a/drivers/usb/phy/phy-tahvo.c
> > +++ b/drivers/usb/phy/phy-tahvo.c
> > @@ -342,8 +342,11 @@ static int tahvo_usb_probe(struct platform_device *pdev)
> >       mutex_init(&tu->serialize);
> >
> >       tu->ick = devm_clk_get(&pdev->dev, "usb_l4_ick");
> > -     if (!IS_ERR(tu->ick))
> > -             clk_enable(tu->ick);
> > +     if (!IS_ERR(tu->ick)) {
> > +             ret = clk_enable(tu->ick);
> > +             if (ret)
> > +                     return ret;
> > +     }
>
> Same questions, why the signed-off-by order and how was this found and
> tested?
>
> thanks,
>
> greg k-h

We wrote the patch together so I listed both of our names.

We used a static analysis tool to find this. Additionally, we
validated the patch's correctness
using the built-in tests provided during the compilation process.

Please kindly let me know if you have any questions or suggestions. Thank you!


Best,
Mingwei
diff mbox series

Patch

diff --git a/drivers/usb/phy/phy-tahvo.c b/drivers/usb/phy/phy-tahvo.c
index ae7bf3ff89ee..0b8801318cd2 100644
--- a/drivers/usb/phy/phy-tahvo.c
+++ b/drivers/usb/phy/phy-tahvo.c
@@ -342,8 +342,11 @@  static int tahvo_usb_probe(struct platform_device *pdev)
 	mutex_init(&tu->serialize);
 
 	tu->ick = devm_clk_get(&pdev->dev, "usb_l4_ick");
-	if (!IS_ERR(tu->ick))
-		clk_enable(tu->ick);
+	if (!IS_ERR(tu->ick)) {
+		ret = clk_enable(tu->ick);
+		if (ret)
+			return ret;
+	}
 
 	/*
 	 * Set initial state, so that we generate kevents only on state changes.