Re: [PATCH 1/1] mm/vmstat: Protect per cpu variables with preempt disable on RT

From: Mel Gorman
Date: Mon Sep 06 2021 - 09:48:40 EST


On Tue, Aug 31, 2021 at 06:45:46PM +0200, Sebastian Andrzej Siewior wrote:
> On 2021-08-05 17:00:19 [+0100], Mel Gorman wrote:
> > mm/vmstat.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 48 insertions(+)
>
> The version in RT also covered the functions
> __count_vm_event()
> __count_vm_events()
>
> in include/linux/vmstat.h. Were they dropped by mistake or on purpose?
>

Sorry for the long delay, this got lost in a mess of mail. It was
dropped on purpose and I tried to explain why in the changelog

This patch differs from the preempt-rt version where
__count_vm_event and __count_vm_events are also protected. The
counters are explicitly "allowed to be to be racy" so there is
no need to protect them from preemption. Only the accurate page
stats that are updated by a read-modify-write need protection. This
patch also differs in that a preempt_[en|dis]able_rt helper is not
used. As vmstat is the only user of the helper, it was suggested
that it be open-coded in vmstat.c instead of risking the helper
being used in unnecessary contexts.

Does that answer your question?

--
Mel Gorman
SUSE Labs