[PATCH V3 0/3] Numabalancing preserve write fix
From: Aneesh Kumar K.V
Date: Sun Feb 19 2017 - 05:04:35 EST
This patch series address an issue w.r.t THP migration and autonuma
preserve write feature. migrate_misplaced_transhuge_page() cannot deal with
concurrent modification of the page. It does a page copy without
following the migration pte sequence. IIUC, this was done to keep the
migration simpler and at the time of implemenation we didn't had THP
page cache which would have required a more elaborate migration scheme.
That means thp autonuma migration expect the protnone with saved write
to be done such that both kernel and user cannot update
the page content. This patch series enables archs like ppc64 to do that.
We are good with the hash translation mode with the current code,
because we never create a hardware page table entry for a protnone pte.
Changes form V2:
* Fix kvm crashes due to ksm not clearing savedwrite bit.
Changes from V1:
* Update the patch so that it apply cleanly to upstream.
* Add acked-by from Michael Neuling
Aneesh Kumar K.V (3):
mm/autonuma: Let architecture override how the write bit should be
stashed in a protnone pte.
mm/ksm: Handle protnone saved writes when making page write protect
powerpc/mm/autonuma: Switch ppc64 to its own implementeation of saved
arch/powerpc/include/asm/book3s/64/pgtable.h | 52 ++++++++++++++++++++++++----
include/asm-generic/pgtable.h | 24 +++++++++++++
mm/huge_memory.c | 6 ++--
mm/ksm.c | 9 +++--
mm/memory.c | 2 +-
mm/mprotect.c | 4 +--
6 files changed, 82 insertions(+), 15 deletions(-)