On 01/02/2018 08:57, Vincent Guittot wrote: > On 31 January 2018 at 16:27, Daniel Lezcano <daniel.lezc...@linaro.org> wrote: >> On 31/01/2018 10:56, Vincent Guittot wrote: >>> On 31 January 2018 at 10:50, Daniel Lezcano <daniel.lezc...@linaro.org> >>> wrote: >>>> On 31/01/2018 10:46, Vincent Guittot wrote: >>>>> On 31 January 2018 at 10:33, Daniel Lezcano <daniel.lezc...@linaro.org> >>>>> wrote: >>>>>> On 31/01/2018 10:01, Vincent Guittot wrote: >>>>>>> Hi Daniel, >>>>>>> >>>>>>> On 23 January 2018 at 16:34, Daniel Lezcano <daniel.lezc...@linaro.org> >>>>>>> wrote: >>>>>> >>>>>> [ ... ] (please trim :) >>>>>>
[ ... ] > struct cpuidle_cooling_device { > struct thermal_cooling_device *cdev; > struct cpumask *cpumask; > struct list_head node; > struct hrtimer timer; > struct kref kref; > atomic_t count; > unsigned int idle_cycle; > unsigned int state; > }; > > struct cpuidle_cooling_cpu { > struct task_struct *tsk; > wait_queue_head_t waitq; > }; > DECLARE_PER_CPU(struct cpuidle_cooling_cpu *, cpu_data); > > You continue to have cpuidle_cooling_device allocated dynamically per > cluster and added in the list but task and waitq are stored per cpu Ok. I will try that. -- <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | <http://twitter.com/#!/linaroorg> Twitter | <http://www.linaro.org/linaro-blog/> Blog