[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/9 gnumach] move kernel vm map to high addresses on x86_64
From: |
Luca Dariz |
Subject: |
[PATCH 0/9 gnumach] move kernel vm map to high addresses on x86_64 |
Date: |
Sun, 12 Feb 2023 18:28:09 +0100 |
The kernel vm region is moved to the last 2GB of the 64-bit address
space. According to the -mcmodel=kernel, the code must be placed in
this range, but probably other addresses can be used for other data
structures, direct memory mapping and so on (as in Linux).
This is just the first step towards being able to use more memory, as
now also user-space has the same 3GB as on a 32-bit kernel, but the
memory structure has not changed much otherwise. The kernel map is not
immediatly following the user map anymore, so the main changes are on
the pmap module.
Luca Dariz (9):
prepare pmap helpers for full 64 bit memory map
fix x86_64 asm for higher kernel addresses
factor out xen-specific bootstrap
factor out PAE-specific bootstrap
use L4 page table directly on x86_64 instead of short-circuiting to
pdpbase
add more explicit names for user space virtual space limits
extend data types to hold a 64-bit address
separate initialization of kernel and user PTP tables
move kernel virtual address space to upper addresses
i386/i386/db_interface.c | 4 +-
i386/i386/ldt.c | 8 +-
i386/i386/pcb.c | 6 +-
i386/i386/trap.c | 12 +-
i386/i386/vm_param.h | 26 ++-
i386/i386at/biosmem.c | 2 -
i386/include/mach/i386/vm_param.h | 2 +-
i386/intel/pmap.c | 328 ++++++++++++++++++++----------
i386/intel/pmap.h | 27 ++-
kern/task.c | 4 +-
x86_64/Makefrag.am | 12 +-
x86_64/interrupt.S | 4 +-
x86_64/locore.S | 10 +-
13 files changed, 290 insertions(+), 155 deletions(-)
--
2.30.2
- [PATCH 0/9 gnumach] move kernel vm map to high addresses on x86_64,
Luca Dariz <=
- [PATCH 6/9] add more explicit names for user space virtual space limits, Luca Dariz, 2023/02/12
- [PATCH 5/9] use L4 page table directly on x86_64 instead of short-circuiting to pdpbase, Luca Dariz, 2023/02/12
- [PATCH 1/9] prepare pmap helpers for full 64 bit memory map, Luca Dariz, 2023/02/12
- [PATCH 2/9] fix x86_64 asm for higher kernel addresses, Luca Dariz, 2023/02/12
- [PATCH 3/9] factor out xen-specific bootstrap, Luca Dariz, 2023/02/12