--- v5
+++ v3
@@ -4,69 +4,45 @@
address we limit the max contexts to a 16bit value instead of 19.
The patch series also switch the page table layout such that we can
-do 512TB effective address. Userspace can ask for allocation from
-the full 512TB address space by specifying hint address
-(with or without MAP_FIXED) above 128TB.
-
-
-Changes from V4:
-* Rebase to latest upstream
-* Add support 512TB mmap.
-
-Changes from V3:
-* Rebase to latest upstream
-* Fixes based on testing
+do 512TB effective address. But we still limit the TASK_SIZE to
+128TB. This was done to make sure we don't break applications
+that make assumption regarding the max address returned by the
+OS. We can switch to 128TB without a linux personality value because
+other architectures do 128TB as max address.
Changes from V2:
* Handle hugepage size correctly.
-
-Aneesh Kumar K.V (17):
+Aneesh Kumar K.V (10):
powerpc/mm/slice: Convert slice_mask high slice to a bitmap
powerpc/mm/slice: Update the function prototype
+ powerpc/mm/hash: Move kernel context to the starting of context range
+ powerpc/mm/hash: Support 68 bit VA
powerpc/mm: Move copy_mm_to_paca to paca.c
powerpc/mm: Remove redundant TASK_SIZE_USER64 checks
+ powerpc/mm/slice: Use mm task_size as max value of slice index
+ powerpc/mm/hash: Increase VA range to 128TB
powerpc/mm/slice: Move slice_mask struct definition to slice.c
powerpc/mm/slice: Update slice mask printing to use bitmap printing.
- powerpc/mm/hash: Move kernel context to the starting of context range
- powerpc/mm/hash: Support 68 bit VA
- powerpc/mm/hash: VSID 0 is no more an invalid VSID
- powerpc/mm/hash: Convert mask to unsigned long
- powerpc/mm/hash: Increase VA range to 128TB
- powerpc/mm/slice: Use mm task_size as max value of slice index
- powerpc/mm/hash: Store task size in PACA
- powerpc/mm/hash: Skip using reserved virtual address range
- powerpc/mm: Switch TASK_SIZE check to use mm->task_size
- mm: Let arch choose the initial value of task size
- powerpc/mm: Enable mappings above 128TB
arch/powerpc/include/asm/book3s/64/hash-4k.h | 2 +-
arch/powerpc/include/asm/book3s/64/hash-64k.h | 2 +-
- arch/powerpc/include/asm/book3s/64/mmu-hash.h | 178 ++++++++++--------
- arch/powerpc/include/asm/kvm_book3s_64.h | 2 -
- arch/powerpc/include/asm/mmu.h | 19 +-
- arch/powerpc/include/asm/mmu_context.h | 3 +-
- arch/powerpc/include/asm/paca.h | 22 +--
+ arch/powerpc/include/asm/book3s/64/mmu-hash.h | 160 ++++++++++++---------
+ arch/powerpc/include/asm/mmu.h | 19 ++-
+ arch/powerpc/include/asm/mmu_context.h | 2 +-
+ arch/powerpc/include/asm/paca.h | 18 +--
arch/powerpc/include/asm/page_64.h | 14 --
- arch/powerpc/include/asm/processor.h | 45 ++++-
- arch/powerpc/kernel/asm-offsets.c | 4 +
- arch/powerpc/kernel/paca.c | 21 +++
- arch/powerpc/kernel/setup-common.c | 9 +
+ arch/powerpc/include/asm/processor.h | 22 ++-
+ arch/powerpc/kernel/paca.c | 26 ++++
arch/powerpc/kvm/book3s_64_mmu_host.c | 10 +-
- arch/powerpc/mm/hash_utils_64.c | 86 +++++++--
- arch/powerpc/mm/hugetlbpage-radix.c | 11 +-
+ arch/powerpc/mm/hash_utils_64.c | 9 +-
arch/powerpc/mm/init_64.c | 4 -
- arch/powerpc/mm/mmap.c | 41 +++--
- arch/powerpc/mm/mmu_context_book3s64.c | 130 ++++++++++---
- arch/powerpc/mm/pgtable-hash64.c | 1 -
+ arch/powerpc/mm/mmu_context_book3s64.c | 96 +++++++++----
arch/powerpc/mm/pgtable_64.c | 5 -
arch/powerpc/mm/slb.c | 2 +-
- arch/powerpc/mm/slb_low.S | 82 ++++++---
- arch/powerpc/mm/slice.c | 253 ++++++++++++++++----------
- arch/powerpc/mm/subpage-prot.c | 3 +-
- arch/powerpc/mm/tlb_hash64.c | 1 -
- fs/exec.c | 10 +-
- 26 files changed, 631 insertions(+), 329 deletions(-)
+ arch/powerpc/mm/slb_low.S | 74 ++++++----
+ arch/powerpc/mm/slice.c | 195 +++++++++++++++-----------
+ 17 files changed, 394 insertions(+), 266 deletions(-)
--
2.7.4