aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hle/kernel/vm_manager.h
diff options
context:
space:
mode:
authorGravatar Yuri Kunde Schlesner <yuriks@yuriks.net>2015-07-11 20:07:49 -0700
committerGravatar Yuri Kunde Schlesner <yuriks@yuriks.net>2015-07-11 20:07:49 -0700
commit4e900d56f3dd2b5c9871b523689322028123d891 (patch)
tree2b233263cff7c001506f660373e2364c8e702637 /src/core/hle/kernel/vm_manager.h
parentb0d72e3de1ec2350716300c86bc02930893e9e23 (diff)
parent5c5cf2f8e000d1bf4fc12ff20351aa60367cb563 (diff)
Merge pull request #912 from yuriks/process-loading
Core: Properly configure address space during binary loading
Diffstat (limited to 'src/core/hle/kernel/vm_manager.h')
-rw-r--r--src/core/hle/kernel/vm_manager.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/hle/kernel/vm_manager.h b/src/core/hle/kernel/vm_manager.h
index 271e2333..b3795a94 100644
--- a/src/core/hle/kernel/vm_manager.h
+++ b/src/core/hle/kernel/vm_manager.h
@@ -101,7 +101,7 @@ struct VirtualMemoryArea {
* - http://duartes.org/gustavo/blog/post/how-the-kernel-manages-your-memory/
* - http://duartes.org/gustavo/blog/post/page-cache-the-affair-between-memory-and-files/
*/
-class VMManager {
+class VMManager final {
// TODO(yuriks): Make page tables switchable to support multiple VMManagers
public:
/**
@@ -121,6 +121,7 @@ public:
using VMAHandle = decltype(vma_map)::const_iterator;
VMManager();
+ ~VMManager();
/// Clears the address space map, re-initializing with a single free area.
void Reset();
@@ -168,6 +169,9 @@ public:
/// Changes the permissions of the given VMA.
void Reprotect(VMAHandle vma, VMAPermission new_perms);
+ /// Dumps the address space layout to the log, for debugging
+ void LogLayout() const;
+
private:
using VMAIter = decltype(vma_map)::iterator;