From 649d372f7da8559f8b6d74ca44af64ba7d7853c4 Mon Sep 17 00:00:00 2001 From: Mary Date: Tue, 20 Jun 2023 17:33:54 +0200 Subject: misc: Implement address space size workarounds (#5191) * misc: Implement address space size workarounds This adds code to support userland with less than 39 bits of address space available by testing reserving multiple sizes and reducing guess address space when needed. This is required for ARM64 support when the kernel is configured to use 63..39 bits for kernel space.(meaning only 38 bits is available to userland) * Address comments * Fix 32 bits address space support and address more comments --- src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs') diff --git a/src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs b/src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs index 28e9f90a..119034c1 100644 --- a/src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs +++ b/src/Ryujinx.HLE/HOS/Kernel/Memory/KPageTable.cs @@ -13,7 +13,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory protected override bool Supports4KBPages => _cpuMemory.Supports4KBPages; - public KPageTable(KernelContext context, IVirtualMemoryManager cpuMemory) : base(context) + public KPageTable(KernelContext context, IVirtualMemoryManager cpuMemory, ulong reservedAddressSpaceSize) : base(context, reservedAddressSpaceSize) { _cpuMemory = cpuMemory; } -- cgit v1.2.3