All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] arm64: mm: optimize VA space organization for 52-bit
@ 2020-10-08 15:35 Ard Biesheuvel
  2020-10-08 15:35 ` [PATCH v2 1/4] arm64: mm: use single quantity to represent the PA to VA translation Ard Biesheuvel
                   ` (6 more replies)
  0 siblings, 7 replies; 26+ messages in thread
From: Ard Biesheuvel @ 2020-10-08 15:35 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: catalin.marinas, Anshuman Khandual, will, Ard Biesheuvel, Steve Capper

This series reorganizes the kernel VA space slightly so that 52-bit VA
configurations can use more virtual address space, i.e., the usable
linear address space almost doubles, from 2^51 to 2^52-2^47.

Patch #1 merges the physvirt_offset and memstart_addr variables, both of
which represent translations between the physical address space and the
linear region, and there is no need for having both. This fixes a bug too,
as the two values were not properly kept in sync when booting with KASLR
enabled.

Patch #2 updates the definitions for the boundaries of the linear space,
so that 52-bit VA builds use all available space for the linear region.

Patches #3 and #4 simplify the way the vmemmap region is configured, and
unify the 48-bit/4k and 52-bit/64k layouts.

Changes since v1:
- drop incorrect use of untagged_addr() from #2
- add patches #3 and #4

Not boot tested yet on a 52-bit VA capable system.

Cc: Steve Capper <steve.capper@arm.com>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>

Ard Biesheuvel (4):
  arm64: mm: use single quantity to represent the PA to VA translation
  arm64: mm: extend linear region for 52-bit VA configurations
  arm64: mm: make vmemmap region a projection of the linear region
  arm64: mm: tidy up top of kernel VA space

 Documentation/arm64/kasan-offsets.sh |  3 +-
 Documentation/arm64/memory.rst       | 45 +++++++++-----------
 arch/arm64/Kconfig                   | 20 ++++-----
 arch/arm64/include/asm/memory.h      | 35 +++++++--------
 arch/arm64/include/asm/pgtable.h     |  6 +--
 arch/arm64/mm/init.c                 | 34 ++++++---------
 6 files changed, 63 insertions(+), 80 deletions(-)

-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2020-11-10 16:19 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-08 15:35 [PATCH v2 0/4] arm64: mm: optimize VA space organization for 52-bit Ard Biesheuvel
2020-10-08 15:35 ` [PATCH v2 1/4] arm64: mm: use single quantity to represent the PA to VA translation Ard Biesheuvel
2020-10-13 16:14   ` Steve Capper
2020-10-13 16:47   ` Steve Capper
2020-10-15 10:47   ` Will Deacon
2020-10-08 15:36 ` [PATCH v2 2/4] arm64: mm: extend linear region for 52-bit VA configurations Ard Biesheuvel
2020-10-13 16:51   ` Steve Capper
2020-10-13 16:57     ` Ard Biesheuvel
2020-10-13 17:38       ` Steve Capper
2020-10-14  3:44   ` Anshuman Khandual
2020-10-14  7:18     ` Ard Biesheuvel
2020-10-08 15:36 ` [PATCH v2 3/4] arm64: mm: make vmemmap region a projection of the linear region Ard Biesheuvel
2020-10-13 16:52   ` Steve Capper
2020-11-10 12:55   ` Geert Uytterhoeven
2020-11-10 13:10     ` Ard Biesheuvel
2020-11-10 14:08       ` Ard Biesheuvel
2020-11-10 14:56         ` Geert Uytterhoeven
2020-11-10 15:39         ` Catalin Marinas
2020-11-10 15:42           ` Ard Biesheuvel
2020-11-10 16:14             ` Catalin Marinas
2020-11-10 16:18               ` Ard Biesheuvel
2020-10-08 15:36 ` [PATCH v2 4/4] arm64: mm: tidy up top of kernel VA space Ard Biesheuvel
2020-10-13 16:52   ` Steve Capper
2020-10-09 14:16 ` [PATCH v2 0/4] arm64: mm: optimize VA space organization for 52-bit Ard Biesheuvel
2020-10-15 20:40 ` Will Deacon
2020-11-09 18:51 ` Catalin Marinas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.