[PATCH 0/1 v2] Protect vmstats on PREEMPT_RT

From: Mel Gorman
Date: Thu Aug 05 2021 - 12:00:34 EST


Changelog since v1
o Remove preempt_[en|dis]able_rt helper

When adding local_lock support to mm/page_alloc.c and reducing the overhead
of vmstats in general, I wondered how vmstats could be safe on PREEMPT_RT
as it partially relies on interrupts being disabled for the stats that
must be accurate for correctness. As it turns out, the preempt-rt tree
already encountered the same problem.

This series protects just the accurate counters. As Thomas expressed
concern that the preempt_enable_rt() helper could be abused, this
version open-codes the preemption with a comment explaining why it
is necessary.

This is specific to PREEMPT_RT which cannot be enabled on mainline yet
and should have no impact on !PREEMPT_RT kernels.

This patch replaces the following mmotm patches

o preempt-provide-preempt__nort-variants.patch
o mm-vmstat-protect-per-cpu-variables-with-preempt-disable-on-rt.patch

--
2.31.1