linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/9] powerpc/mm: Restructure Linux PTE on Book3S/64 to radix format
@ 2016-02-22  2:41 Paul Mackerras
  2016-02-22  2:41 ` [PATCH 1/9] powerpc/mm/book3s-64: Clean up some obsolete or misleading comments Paul Mackerras
                   ` (8 more replies)
  0 siblings, 9 replies; 16+ messages in thread
From: Paul Mackerras @ 2016-02-22  2:41 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: Michael Ellerman, Aneesh Kumar K.V

This patch series modifies the Linux PTE format used on 64-bit Book3S
processors (i.e. POWER server processors) to make the bits line up
with the PTE format used in the radix trees defined in PowerISA v3.0.
This will reduce the amount of further change required to make a
kernel that can run with either a radix MMU or a hashed page table
(HPT) MMU.

This also changes the upper levels of the tree to use real addresses
rather than kernel virtual addresses - that is, we no longer have the
0xc000... at the top of each PGD/PUD/PMD entry.  Unlike the previous
version of these patches, these patches do not change the format for
the 64-bit embedded processors, only for 64-bit server processors.

The patch series is against v4.5-rc5.

I have compiled this for all the defconfigs in the tree, without
error.  I have tested this, with Aneesh's "powerpc/mm/hash: Clear the
invalid slot information correctly" patch on top, both running
bare-metal on a POWER8 and in a KVM guest on that POWER8 system.  In
the guest I tested both 4k and 64k configs, with THP enabled; in the
host I tested with 64k page size and THP enabled.  All these tests ran
fine, including running a KVM guest on the bare-metal system.  So far
I have done kernel compiles in a loop as the test, but I plan to run
LTP and possibly some other tests.

Paul.

 arch/powerpc/include/asm/book3s/64/hash-4k.h  |  5 ++-
 arch/powerpc/include/asm/book3s/64/hash-64k.h | 24 +++++------
 arch/powerpc/include/asm/book3s/64/hash.h     | 57 ++++++++++++++-------------
 arch/powerpc/include/asm/book3s/64/pgtable.h  |  6 +--
 arch/powerpc/include/asm/nohash/64/pgtable.h  |  3 ++
 arch/powerpc/include/asm/pgalloc-64.h         | 16 ++++----
 arch/powerpc/mm/hash64_64k.c                  |  3 +-
 arch/powerpc/mm/hash_utils_64.c               | 10 ++---
 arch/powerpc/mm/hugetlbpage-hash64.c          |  5 ++-
 arch/powerpc/mm/mmu_decl.h                    |  3 +-
 arch/powerpc/mm/pgtable_64.c                  |  4 +-
 11 files changed, 73 insertions(+), 63 deletions(-)

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2016-02-29 11:05 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-22  2:41 [PATCH 0/9] powerpc/mm: Restructure Linux PTE on Book3S/64 to radix format Paul Mackerras
2016-02-22  2:41 ` [PATCH 1/9] powerpc/mm/book3s-64: Clean up some obsolete or misleading comments Paul Mackerras
2016-02-29 11:05   ` [1/9] " Michael Ellerman
2016-02-22  2:41 ` [PATCH 2/9] powerpc/mm/book3s-64: Free up 7 high-order bits in the Linux PTE Paul Mackerras
2016-02-22  2:41 ` [PATCH 3/9] powerpc/mm/book3s-64: Use physical addresses in upper page table tree levels Paul Mackerras
2016-02-22  4:55   ` Aneesh Kumar K.V
2016-02-23  1:16     ` Paul Mackerras
2016-02-22  7:06   ` Aneesh Kumar K.V
2016-02-23  1:19     ` Paul Mackerras
2016-02-23  2:36   ` [PATCH v2 " Paul Mackerras
2016-02-22  2:41 ` [PATCH 4/9] powerpc/mm/book3s-64: Move _PAGE_PRESENT to the most significant bit Paul Mackerras
2016-02-22  2:41 ` [PATCH 5/9] powerpc/mm/book3s-64: Move _PAGE_PTE to 2nd " Paul Mackerras
2016-02-22  2:41 ` [PATCH 6/9] powerpc/mm/book3s-64: Move HPTE-related bits in PTE to upper end Paul Mackerras
2016-02-22  2:41 ` [PATCH 7/9] powerpc/mm/book3s-64: Shuffle read, write, execute and user bits in PTE Paul Mackerras
2016-02-22  2:41 ` [PATCH 8/9] powerpc/mm/book3s-64: Move software-used " Paul Mackerras
2016-02-22  2:41 ` [PATCH 9/9] powerpc/mm/book3s-64: Expand the real page number field of the Linux PTE Paul Mackerras

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).