On Fri, 21 May 2021 at 11:37, Hillf Danton <hdanton@xxxxxxxx> wrote: > On Fri, 21 May 2021 10:32:09 +0200 Marco Elver wrote: > >Since wait_event() uses TASK_UNINTERRUPTIBLE by default, waiting for an > >allocation counts towards load. However, for KFENCE, this does not make > >any sense, since there is no busy work we're awaiting. > > Because of a blocking wq callback, kfence_timer should be queued on a > unbound workqueue in the first place. Feel free to add a followup to > replace system_power_efficient_wq with system_unbound_wq if it makes > sense to you that kfence behaves as correctly as expected independent of > CONFIG_WQ_POWER_EFFICIENT_DEFAULT given "system_power_efficient_wq is > identical to system_wq if 'wq_power_efficient' is disabled." Thanks for pointing it out -- I think this makes sense, let's just use the unbound wq unconditionally. Since it's independent of this patch, I've sent it separately: https://lkml.kernel.org/r/20210521111630.472579-1-elver@xxxxxxxxxx