Messages in this thread | | | Subject | Re: [PATCH V6] powercap/drivers/idle_injection: Add an idle injection framework | From | Daniel Lezcano <> | Date | Tue, 12 Jun 2018 14:44:29 +0200 |
| |
On 12/06/2018 14:30, Peter Zijlstra wrote: > On Tue, Jun 12, 2018 at 02:00:11PM +0200, Daniel Lezcano wrote: >> +static void __idle_injection_wakeup(struct idle_injection_device *ii_dev) >> +{ >> + struct idle_injection_thread *iit; >> + struct cpumask tmp; >> + unsigned int cpu; >> + >> + cpumask_and(&tmp, ii_dev->cpumask, cpu_online_mask); > > You should not be having a cpumask on the stack. Those things can be > ginormous.
Ok, the kernel code uses of cpumask_t on the stack when dealing with cpumask_and. I assume it is also not recommended.
What would be the best practice ? Allocate a per cpumask at init time as a temporary mask to work with ?
-- <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
| |