Message ID | 1461056407-22542-1-git-send-email-hongtao.jia@nxp.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Rafael Wysocki |
Headers | show |
On 19-04-16, 17:00, Jia Hongtao wrote: > .exit callback (qoriq_cpufreq_cpu_exit()) is also used during suspend. > So __exit macro should be removed or the function will be discarded. > > Signed-off-by: Jia Hongtao <hongtao.jia@nxp.com> > --- > drivers/cpufreq/qoriq-cpufreq.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
On 19-04-16, 17:00, Jia Hongtao wrote: > Cooling device is registered by ready callback. It's also invoked while > system resuming from sleep (Enabling non-boot cpus). Thus cooling device > may be multiple registered. Matchable unregistration is added to exit > callback to fix this issue. > > Signed-off-by: Jia Hongtao <hongtao.jia@nxp.com> > --- > drivers/cpufreq/qoriq-cpufreq.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/cpufreq/qoriq-cpufreq.c b/drivers/cpufreq/qoriq-cpufreq.c > index 3a3fe39..0b85f90 100644 > --- a/drivers/cpufreq/qoriq-cpufreq.c > +++ b/drivers/cpufreq/qoriq-cpufreq.c > @@ -305,6 +305,7 @@ static int qoriq_cpufreq_cpu_exit(struct cpufreq_policy *policy) > { > struct cpu_data *data = policy->driver_data; > > + cpufreq_cooling_unregister(data->cdev); > kfree(data->pclk); > kfree(data->table); > kfree(data); Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
On Tuesday, April 19, 2016 02:41:51 PM Viresh Kumar wrote: > On 19-04-16, 17:00, Jia Hongtao wrote: > > .exit callback (qoriq_cpufreq_cpu_exit()) is also used during suspend. > > So __exit macro should be removed or the function will be discarded. > > > > Signed-off-by: Jia Hongtao <hongtao.jia@nxp.com> > > --- > > drivers/cpufreq/qoriq-cpufreq.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Applied, thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/cpufreq/qoriq-cpufreq.c b/drivers/cpufreq/qoriq-cpufreq.c index b23e525..3a3fe39 100644 --- a/drivers/cpufreq/qoriq-cpufreq.c +++ b/drivers/cpufreq/qoriq-cpufreq.c @@ -301,7 +301,7 @@ err_np: return -ENODEV; } -static int __exit qoriq_cpufreq_cpu_exit(struct cpufreq_policy *policy) +static int qoriq_cpufreq_cpu_exit(struct cpufreq_policy *policy) { struct cpu_data *data = policy->driver_data; @@ -348,7 +348,7 @@ static struct cpufreq_driver qoriq_cpufreq_driver = { .name = "qoriq_cpufreq", .flags = CPUFREQ_CONST_LOOPS, .init = qoriq_cpufreq_cpu_init, - .exit = __exit_p(qoriq_cpufreq_cpu_exit), + .exit = qoriq_cpufreq_cpu_exit, .verify = cpufreq_generic_frequency_table_verify, .target_index = qoriq_cpufreq_target, .get = cpufreq_generic_get,
.exit callback (qoriq_cpufreq_cpu_exit()) is also used during suspend. So __exit macro should be removed or the function will be discarded. Signed-off-by: Jia Hongtao <hongtao.jia@nxp.com> --- drivers/cpufreq/qoriq-cpufreq.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)