[PATCH 0/2] Protect vmstats on PREEMPT_RT
From: Mel Gorman
Date: Fri Jul 23 2021 - 06:00:50 EST
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 primary counters. While there is another
vmstat-related patch, it is related to memcg getting using local_lock and
I have not fully considered those patches and whether they are ok as-is
or need modification but this series makes a start.
Patch 1 is authored by Thomas (cc'd) and has not being altered.
Patch 2 is authored by Ingo (cc'd) but I modified what he implemented
for reasons explained in the changelog.
This is specific to PREEMPT_RT which cannot be enabled on mainline yet
and should have no impact on !PREEMPT_RT kernels.
include/linux/preempt.h | 18 +++++++++++++++++-
mm/vmstat.c | 12 ++++++++++++
2 files changed, 29 insertions(+), 1 deletion(-)
--
2.26.2