[PATCH] mm: numa: bugfix for LAST_CPUPID_NOT_IN_PAGE_FLAGS
Andrew Morton
akpm at linux-foundation.org
Fri Feb 14 10:20:09 EST 2014
On Wed, 5 Feb 2014 09:25:46 +0800 Liu Ping Fan <qemulist at gmail.com> wrote:
> When doing some numa tests on powerpc, I triggered an oops bug. I find
> it is caused by using page->_last_cpupid. It should be initialized as
> "-1 & LAST_CPUPID_MASK", but not "-1". Otherwise, in task_numa_fault(),
> we will miss the checking (last_cpupid == (-1 & LAST_CPUPID_MASK)).
> And finally cause an oops bug in task_numa_group(), since the online cpu is
> less than possible cpu.
I grabbed this. I added this to the changelog:
: PPC needs the LAST_CPUPID_NOT_IN_PAGE_FLAGS case because ppc needs to
: support a large physical address region, up to 2^46 but small section size
: (2^24). So when NR_CPUS grows up, it is easily to cause
: not-in-page-flags.
to hopefully address Peter's observation.
How should we proceed with this? I'm getting the impression that numa
balancing on ppc is a dead duck in 3.14, so perhaps this and
powerpc-mm-add-new-set-flag-argument-to-pte-pmd-update-function.patch
mm-dirty-accountable-change-only-apply-to-non-prot-numa-case.patch
mm-use-ptep-pmdp_set_numa-for-updating-_page_numa-bit.patch
are 3.15-rc1 material?
More information about the Linuxppc-dev
mailing list