linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
To: npiggin@gmail.com, paulus@samba.org, mpe@ellerman.id.au
Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>,
	linuxppc-dev@lists.ozlabs.org
Subject: [PATCH v3 0/8] Update hash MMU kernel mapping to be in sync with radix
Date: Tue, 16 Apr 2019 15:37:14 +0530	[thread overview]
Message-ID: <20190416100722.10324-1-aneesh.kumar@linux.ibm.com> (raw)

This patch series map all the kernel regions (vmalloc, IO and vmemmap) using
0xc top nibble address. This brings hash translation kernel mapping in sync with radix.
Each of these regions can now map 512TB. We use one context to map these
regions and hence the 512TB limit. We also update radix to use the same limit even though
we don't have context related restrictions there.

For 4K page size, Michael Ellerman requested to keep the VMALLOC_START the same as
what we have with hash 64K. I did try to implement that but found that code
gets complicated with no real benefit. To assist in debugging I am adding patch
"powerpc/mm: Print kernel map details to dmesg"  which should show different
mapping region for the booted kernel.

Also to note here is we now have the same map for both hash and radix on 4K page size.
This limits 4K radix to 16TB linear mapping range. This was done to make sure we
have a similar mapping between hash and radix. If we think this is unnecessarily limiting
radix translation mode, I can drop this. 

Aneesh Kumar K.V (8):
  powerpc/mm/hash64: Add a variable to track the end of IO mapping
  powerpc/mm/hash64: Map all the kernel regions in the same 0xc range
  powerpc/mm: Validate address values against different region limits
  powerpc/mm: Drop the unnecessary region check
  powerpc/mm/hash: Simplify the region id calculation.
  powerpc/mm: Print kernel map details to dmesg
  powerpc/mm: Consolidate radix and hash address map details
  powerpc/mm/hash: Rename KERNEL_REGION_ID to LINEAR_MAP_REGION_ID

 arch/powerpc/include/asm/book3s/64/hash-4k.h  |  6 --
 arch/powerpc/include/asm/book3s/64/hash-64k.h |  6 --
 arch/powerpc/include/asm/book3s/64/hash.h     | 89 +++++++++++--------
 arch/powerpc/include/asm/book3s/64/map.h      | 80 +++++++++++++++++
 arch/powerpc/include/asm/book3s/64/mmu-hash.h | 33 ++++---
 arch/powerpc/include/asm/book3s/64/pgtable.h  | 34 +------
 arch/powerpc/include/asm/book3s/64/radix.h    | 33 ++-----
 arch/powerpc/include/asm/page.h               | 11 ---
 arch/powerpc/kernel/setup-common.c            |  3 +
 arch/powerpc/kvm/book3s_hv_rm_xics.c          |  2 +-
 arch/powerpc/mm/copro_fault.c                 | 18 ++--
 arch/powerpc/mm/hash_utils_64.c               | 48 ++++++----
 arch/powerpc/mm/pgtable-hash64.c              | 13 ++-
 arch/powerpc/mm/pgtable-radix.c               | 23 +++--
 arch/powerpc/mm/pgtable_64.c                  | 15 ++--
 arch/powerpc/mm/ptdump/hashpagetable.c        |  4 -
 arch/powerpc/mm/ptdump/ptdump.c               |  4 -
 arch/powerpc/mm/slb.c                         | 26 +++---
 arch/powerpc/platforms/cell/spu_base.c        |  4 +-
 drivers/misc/cxl/fault.c                      |  2 +-
 drivers/misc/ocxl/link.c                      |  2 +-
 21 files changed, 255 insertions(+), 201 deletions(-)
 create mode 100644 arch/powerpc/include/asm/book3s/64/map.h

-- 
2.20.1


             reply	other threads:[~2019-04-16 10:09 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-16 10:07 Aneesh Kumar K.V [this message]
2019-04-16 10:07 ` [PATCH v3 1/8] powerpc/mm/hash64: Add a variable to track the end of IO mapping Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 2/8] powerpc/mm/hash64: Map all the kernel regions in the same 0xc range Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 3/8] powerpc/mm: Validate address values against different region limits Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 4/8] powerpc/mm: Drop the unnecessary region check Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 5/8] powerpc/mm/hash: Simplify the region id calculation Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 6/8] powerpc/mm: Print kernel map details to dmesg Aneesh Kumar K.V
2019-04-16 10:07 ` [PATCH v3 7/8] powerpc/mm: Consolidate radix and hash address map details Aneesh Kumar K.V
2019-04-16 14:03   ` Nicholas Piggin
2019-04-17  3:00     ` Aneesh Kumar K.V
2019-04-17 12:34     ` Michael Ellerman
2019-04-18  1:20       ` Nicholas Piggin
2019-04-16 10:07 ` [PATCH v3 8/8] powerpc/mm/hash: Rename KERNEL_REGION_ID to LINEAR_MAP_REGION_ID Aneesh Kumar K.V

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190416100722.10324-1-aneesh.kumar@linux.ibm.com \
    --to=aneesh.kumar@linux.ibm.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    --cc=npiggin@gmail.com \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).