On Thu, May 19, 2011 at 05:26, Kevin Hilman <[email protected]> wrote:
> Nishanth Menon <[email protected]> writes:
>
>> freq_table allocated by opp_init_cpufreq_table in omap_cpu_init
>> needs to be freed in omap_cpu_exit.
>
> Actually it needs to be freed by a corresponding OPP layer function.
>
> IOW, what happens if the OPP core code switches from using kmalloc to
> static tables, or something else?    The cleanup should be done by the
> same layer that does the init/alloc.

Agreed. We can introduce a new api in OPP layer to free up as well. I
will post a patch for it.
Regards,
Nishanth Menon

> Kevin
>
>> Signed-off-by: Nishanth Menon <[email protected]>
>> ---
>>  arch/arm/mach-omap2/omap2plus-cpufreq.c |    3 +++
>>  1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/omap2plus-cpufreq.c 
>> b/arch/arm/mach-omap2/omap2plus-cpufreq.c
>> index d53ce23..e38ebb8 100644
>> --- a/arch/arm/mach-omap2/omap2plus-cpufreq.c
>> +++ b/arch/arm/mach-omap2/omap2plus-cpufreq.c
>> @@ -26,6 +26,7 @@
>>  #include <linux/clk.h>
>>  #include <linux/io.h>
>>  #include <linux/opp.h>
>> +#include <linux/slab.h>
>>  #include <linux/cpu.h>
>>
>>  #include <asm/system.h>
>> @@ -216,6 +217,8 @@ static int __cpuinit omap_cpu_init(struct cpufreq_policy 
>> *policy)
>>  static int omap_cpu_exit(struct cpufreq_policy *policy)
>>  {
>>       clk_exit_cpufreq_table(&freq_table);
>> +     kfree(freq_table);
>> +     freq_table = NULL;
>>       clk_put(mpu_clk);
>>       return 0;
>>  }
>
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to