Messages in this thread Patch in this message | | | Date | Wed, 28 Jan 2015 12:31:06 -0500 | From | Steven Rostedt <> | Subject | Re: [PATCH v1 5/7] thermal: add trace events to the power allocator governor |
| |
On Wed, 28 Jan 2015 17:00:36 +0000 Javi Merino <javi.merino@arm.com> wrote:
> + if (trace_thermal_power_cpu_limit_enabled() && load_cpu) { > + trace_thermal_power_cpu_get_power( > + &cpufreq_device->allowed_cpus, > + freq, load_cpu, i, dynamic_power, static_power); > + > + devm_kfree(&cdev->device, load_cpu);
You may want to move the devm_kfree() out of the trace_thermal_power_cpu_limit_enabled() check. There could be a race where that gets disabled while this function is running and you just leaked memory.
if (load_cpu) devm_kfree(&cdev->device, load_cpu);
should be done by itself.
-- Steve
> + } > > *power = static_power + dynamic_power; > return 0; > @@ -664,6 +689,8 @@ static int cpufreq_power2state(struct thermal_cooling_device *cdev, > return -EINVAL; > } > > + trace_thermal_power_cpu_limit(&cpufreq_device->allowed_cpus, > + target_freq, *state, power); > return 0; > } >
| |