From 2289e895aa63cdb391795c573b96b1880c31f097 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Thu, 28 Mar 2019 18:52:45 -0400 Subject: [PATCH] kernel/process: Store the total size of the code memory loaded This will be necessary to properly report the used memory size in svcGetInfo. --- src/core/hle/kernel/process.cpp | 2 ++ src/core/hle/kernel/process.h | 3 +++ 2 files changed, 5 insertions(+) diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp index bb2673732..819d2cb0b 100644 --- a/src/core/hle/kernel/process.cpp +++ b/src/core/hle/kernel/process.cpp @@ -228,6 +228,8 @@ void Process::LoadModule(CodeSet module_, VAddr base_addr) { MapSegment(module_.RODataSegment(), VMAPermission::Read, MemoryState::CodeData); MapSegment(module_.DataSegment(), VMAPermission::ReadWrite, MemoryState::CodeData); + code_memory_size += module_.memory->size(); + // Clear instruction cache in CPU JIT system.InvalidateCpuInstructionCaches(); } diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h index ee559fe4c..16193ca56 100644 --- a/src/core/hle/kernel/process.h +++ b/src/core/hle/kernel/process.h @@ -250,6 +250,9 @@ private: /// Size of the main thread's stack in bytes. u64 main_thread_stack_size = 0; + /// Size of the loaded code memory in bytes. + u64 code_memory_size = 0; + /// Current status of the process ProcessStatus status;