On Thu, Jan 24, 2019 at 01:15:18PM -0800, Suren Baghdasaryan wrote: > + atomic_set(&group->polling, polling); > + /* > + * Memory barrier is needed to order group->polling > + * write before times[] read in collect_percpu_times() > + */ > + smp_mb__after_atomic(); That's broken, smp_mb__{before,after}_atomic() can only be used on atomic RmW operations, something atomic_set() is _not_.