usb: dwc3: qcom: Fix an error handling path in dwc3_qcom_probe()

Message ID b69fa8dd68d816e7d24c88d3eda776ceb28c5dc5.1685890571.git.christophe.jaillet@wanadoo.fr
State New
Headers
Series usb: dwc3: qcom: Fix an error handling path in dwc3_qcom_probe() |

Commit Message

Christophe JAILLET June 4, 2023, 2:56 p.m. UTC
  If dwc3_qcom_create_urs_usb_platdev() fails, some resources still need to
be released, as already done in the other error handling path of the
probe.

Fixes: c25c210f590e ("usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 drivers/usb/dwc3/dwc3-qcom.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
  

Comments

Andrew Halaney June 8, 2023, 4:54 p.m. UTC | #1
On Sun, Jun 04, 2023 at 04:56:34PM +0200, Christophe JAILLET wrote:
> If dwc3_qcom_create_urs_usb_platdev() fails, some resources still need to
> be released, as already done in the other error handling path of the
> probe.
> 
> Fixes: c25c210f590e ("usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

Reviewed-by: Andrew Halaney <ahalaney@redhat.com>

> ---
>  drivers/usb/dwc3/dwc3-qcom.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
> index 822735814050..aa96c473f839 100644
> --- a/drivers/usb/dwc3/dwc3-qcom.c
> +++ b/drivers/usb/dwc3/dwc3-qcom.c
> @@ -856,9 +856,10 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
>  			if (IS_ERR_OR_NULL(qcom->urs_usb)) {
>  				dev_err(dev, "failed to create URS USB platdev\n");
>  				if (!qcom->urs_usb)
> -					return -ENODEV;
> +					ret = -ENODEV;
>  				else
> -					return PTR_ERR(qcom->urs_usb);
> +					ret = PTR_ERR(qcom->urs_usb);
> +				goto clk_disable;
>  			}
>  		}
>  	}
> -- 
> 2.34.1
>
  

Patch

diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
index 822735814050..aa96c473f839 100644
--- a/drivers/usb/dwc3/dwc3-qcom.c
+++ b/drivers/usb/dwc3/dwc3-qcom.c
@@ -856,9 +856,10 @@  static int dwc3_qcom_probe(struct platform_device *pdev)
 			if (IS_ERR_OR_NULL(qcom->urs_usb)) {
 				dev_err(dev, "failed to create URS USB platdev\n");
 				if (!qcom->urs_usb)
-					return -ENODEV;
+					ret = -ENODEV;
 				else
-					return PTR_ERR(qcom->urs_usb);
+					ret = PTR_ERR(qcom->urs_usb);
+				goto clk_disable;
 			}
 		}
 	}