Hi Konrad, > If cpufreq_register_driver() fails we would free the acpi driver > related structures but not free the ones allocated > by acpi_cpufreq_boost_init() function. This meant that as > the driver error-ed out and a CPU online/offline event came > we would crash and burn as one of the CPU notifiers would point > to garbage. > Thanks for spotting this bug. My bad. > This fixes a regression that commit > cfc9c8ed03e4d908f2388af8815f44c87b503aaf "acpi-cpufreq: Adjust the > code to use the common boost attribute" introduced. > > CC: Lukasz Majewski <l.majewski@xxxxxxxxxxx> > CC: Myungjoo Ham <myungjoo.ham@xxxxxxxxxxx> > CC: Viresh Kumar <viresh.kumar@xxxxxxxxxx> > CC: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > CC: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > --- > drivers/cpufreq/acpi-cpufreq.c | 5 +++-- > 1 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/cpufreq/acpi-cpufreq.c > b/drivers/cpufreq/acpi-cpufreq.c index 79e5608..3e856d6 100644 > --- a/drivers/cpufreq/acpi-cpufreq.c > +++ b/drivers/cpufreq/acpi-cpufreq.c > @@ -969,9 +969,10 @@ static int __init acpi_cpufreq_init(void) > acpi_cpufreq_boost_init(); > > ret = cpufreq_register_driver(&acpi_cpufreq_driver); > - if (ret) > + if (ret) { > free_acpi_perf_data(); > - > + acpi_cpufreq_boost_exit(); > + } > return ret; > } > Acked-by: Lukasz Majewski <l.majewski@xxxxxxxxxxx> -- Best regards, Lukasz Majewski Samsung R&D Institute Poland (SRPOL) | Linux Platform Group -- To unsubscribe from this list: send the line "unsubscribe cpufreq" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html