On 12/23/19 2:41 AM, Yangtao Li wrote: > The exynos_bus_profile_init process may fail, but the devfreq event device > remains enabled. Call devfreq_event_disable_edev on the error return path. > > Signed-off-by: Yangtao Li <tiny.windzz@xxxxxxxxx> > --- > v2: > -change subject > -rename lable to err_edev > -add return value check > --- > drivers/devfreq/exynos-bus.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/devfreq/exynos-bus.c b/drivers/devfreq/exynos-bus.c > index 7f5917d59072..948e9340f91c 100644 > --- a/drivers/devfreq/exynos-bus.c > +++ b/drivers/devfreq/exynos-bus.c > @@ -335,10 +335,17 @@ static int exynos_bus_profile_init(struct exynos_bus *bus, > ret = exynos_bus_set_event(bus); > if (ret < 0) { > dev_err(dev, "failed to set event to devfreq-event devices\n"); > - return ret; > + goto err_edev; > } > > return 0; > + > +err_edev: > + ret = exynos_bus_disable_edev(bus); > + if (ret < 0) > + dev_warn(dev, "failed to disable the devfreq-event devices\n"); > + > + return ret; > } > > static int exynos_bus_profile_init_passive(struct exynos_bus *bus, > Applied it. -- Best Regards, Chanwoo Choi Samsung Electronics