]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
usb: dwc3: xilinx: add missing depopulate in probe error path
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Fri, 16 Aug 2024 07:54:09 +0000 (09:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 22 Aug 2024 09:29:17 +0000 (17:29 +0800)
Depopulate device in probe error paths to fix leak of children
resources.

Fixes: 53b5ff83d893 ("usb: dwc3: xilinx: improve error handling for PM APIs")
Cc: stable@vger.kernel.org
Reviewed-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Link: https://lore.kernel.org/r/20240816075409.23080-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/dwc3/dwc3-xilinx.c

index bb4d894c16e949c9a31f1ab1ccf52fcbf947f4ee..f1298b1b4f84911339ec6df2b48d256132291cfd 100644 (file)
@@ -327,9 +327,14 @@ static int dwc3_xlnx_probe(struct platform_device *pdev)
                goto err_pm_set_suspended;
 
        pm_suspend_ignore_children(dev, false);
-       return pm_runtime_resume_and_get(dev);
+       ret = pm_runtime_resume_and_get(dev);
+       if (ret < 0)
+               goto err_pm_set_suspended;
+
+       return 0;
 
 err_pm_set_suspended:
+       of_platform_depopulate(dev);
        pm_runtime_set_suspended(dev);
 
 err_clk_put: