From: Alexey Khoroshilov <khoroshi...@ispras.ru>

[ Upstream commit ce035409bfa892a2fabb89720b542e1b335c3426 ]

If devm_extcon_dev_allocate() fails, we should disable clk before return.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshi...@ispras.ru>
Fixes: 860d2686fda7 ("usb: phy: tahvo: Use 
devm_extcon_dev_[allocate|register]() and replace deprecated API")
Signed-off-by: Felipe Balbi <felipe.ba...@linux.intel.com>
Signed-off-by: Sasha Levin <alexander.le...@verizon.com>
---
 drivers/usb/phy/phy-tahvo.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/phy/phy-tahvo.c b/drivers/usb/phy/phy-tahvo.c
index ab5d364f6e8c..335a1ef35224 100644
--- a/drivers/usb/phy/phy-tahvo.c
+++ b/drivers/usb/phy/phy-tahvo.c
@@ -368,7 +368,8 @@ static int tahvo_usb_probe(struct platform_device *pdev)
        tu->extcon = devm_extcon_dev_allocate(&pdev->dev, tahvo_cable);
        if (IS_ERR(tu->extcon)) {
                dev_err(&pdev->dev, "failed to allocate memory for extcon\n");
-               return -ENOMEM;
+               ret = PTR_ERR(tu->extcon);
+               goto err_disable_clk;
        }
 
        ret = devm_extcon_dev_register(&pdev->dev, tu->extcon);
-- 
2.11.0

Reply via email to