Re: [RFC PATCH] sched/numa: fix bug in update_task_scan_period

From: Mel Gorman
Date: Tue Aug 11 2020 - 07:02:01 EST


On Tue, Aug 11, 2020 at 04:30:31PM +0800, ????????? wrote:
> When p->numa_faults_locality[2] > 0, numa_scan_period is doubled, but
> this array will never be cleared, which causes scanning period always
> reaching its max value. This patch clears numa_faults_locality after
> numa_scan_period being doubled to fix this bug.
>

An out label at the end of the function to clears numa_faults_locality
would also work with a comment explaining why. That aside, what is
the user-visible impact of the patch? If there are no useful faults or
migration failures, it makes sense that scanning is very slow until the
situation changes. The corner case is that a migration failure might keep
the scan rate slower than it should be but the flip side is that fixing
it might increase the scan rate and still incur migration failures which
introduces overhead with no gain.

--
Mel Gorman
SUSE Labs