07.12.2021 15:56, Qing Wang пишет: > From: Wang Qing <wangqing@xxxxxxxx> > > of_find_device_by_node() takes a reference to the embedded struct device > which needs to be dropped when error return. > > Add a jump target to fix the exception handling for this > function implementation. > > Signed-off-by: Wang Qing <wangqing@xxxxxxxx> > --- > drivers/usb/phy/phy-tegra-usb.c | 18 +++++++++++++----- > 1 file changed, 13 insertions(+), 5 deletions(-) > > diff --git a/drivers/usb/phy/phy-tegra-usb.c b/drivers/usb/phy/phy-tegra-usb.c > index 68cd4b6..5678b7f > --- a/drivers/usb/phy/phy-tegra-usb.c > +++ b/drivers/usb/phy/phy-tegra-usb.c > @@ -1300,18 +1300,26 @@ static int tegra_usb_phy_parse_pmc(struct device *dev, > err = devm_add_action_or_reset(dev, tegra_usb_phy_put_pmc_device, > &pmc_pdev->dev); This devm_add_action_or_reset() takes care of dropping the reference. This patch is incorrect.