On Sat 28-03-15 10:53:22, Peter Zijlstra wrote: [...]
Alternatively the thing hocko suggests is an utter fail too. You cannot stuff that into hardirq context, that's insane.
I guess you are referring to http://article.gmane.org/gmane.linux.kernel.mm/127569, right?
Why cannot we do something like refresh_cpu_vm_stats from the IRQ context? Especially the first zone stat part. The per-cpu pagesets is more costly and it would need a special treatment, alright. A simple way would be to splice the lists from the per-cpu context and then free those pages from the kthread context.
I am still wondering why those two things were squashed into a single place. Why kswapd is not doing the pcp cleanup?