diff options
author | bunnei <bunneidev@gmail.com> | 2022-10-29 23:45:09 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2022-11-04 05:17:07 +0100 |
commit | 32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a (patch) | |
tree | 0d64d4f0f6fc5bbce1ff4e9fcb5ac4ceb60b1c80 /src/core/hle/kernel/k_page_table.cpp | |
parent | core: hle: kernel: k_dynamic_page_manager: Refresh. (diff) | |
download | yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar.gz yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar.bz2 yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar.lz yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar.xz yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.tar.zst yuzu-32d7faafa8e6c12b9bbdb75505c7f0e58fa1bb4a.zip |
Diffstat (limited to 'src/core/hle/kernel/k_page_table.cpp')
-rw-r--r-- | src/core/hle/kernel/k_page_table.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/core/hle/kernel/k_page_table.cpp b/src/core/hle/kernel/k_page_table.cpp index 307e491cb..c513e790e 100644 --- a/src/core/hle/kernel/k_page_table.cpp +++ b/src/core/hle/kernel/k_page_table.cpp @@ -15,6 +15,7 @@ #include "core/hle/kernel/k_resource_limit.h" #include "core/hle/kernel/k_scoped_resource_reservation.h" #include "core/hle/kernel/k_system_control.h" +#include "core/hle/kernel/k_system_resource.h" #include "core/hle/kernel/kernel.h" #include "core/hle/kernel/svc_results.h" #include "core/memory.h" @@ -49,9 +50,10 @@ KPageTable::KPageTable(Core::System& system_) KPageTable::~KPageTable() = default; Result KPageTable::InitializeForProcess(FileSys::ProgramAddressSpaceType as_type, bool enable_aslr, - VAddr code_addr, size_t code_size, - KMemoryBlockSlabManager* mem_block_slab_manager, - KMemoryManager::Pool pool) { + bool enable_das_merge, bool from_back, + KMemoryManager::Pool pool, VAddr code_addr, + size_t code_size, KSystemResource* system_resource, + KResourceLimit* resource_limit) { const auto GetSpaceStart = [this](KAddressSpaceInfo::Type type) { return KAddressSpaceInfo::GetAddressSpaceStart(m_address_space_width, type); @@ -116,7 +118,9 @@ Result KPageTable::InitializeForProcess(FileSys::ProgramAddressSpaceType as_type m_address_space_start = start; m_address_space_end = end; m_is_kernel = false; - m_memory_block_slab_manager = mem_block_slab_manager; + m_memory_block_slab_manager = system_resource->GetMemoryBlockSlabManagerPointer(); + m_block_info_manager = system_resource->GetBlockInfoManagerPointer(); + m_resource_limit = resource_limit; // Determine the region we can place our undetermineds in VAddr alloc_start{}; |