summaryrefslogtreecommitdiffstats
path: root/src/kernel/vmmmgr.C
diff options
context:
space:
mode:
authorDoug Gilbert <dgilbert@us.ibm.com>2011-09-12 12:47:53 -0500
committerDouglas R. Gilbert <dgilbert@us.ibm.com>2011-09-19 16:05:34 -0500
commitde8a529d349aebb344979609055f123c196ccfe3 (patch)
treeb91665407f69730aaba8da794afc47240997dd47 /src/kernel/vmmmgr.C
parentb754f8b47e343f449e5f05f67b948513363abd12 (diff)
downloadtalos-hostboot-de8a529d349aebb344979609055f123c196ccfe3.tar.gz
talos-hostboot-de8a529d349aebb344979609055f123c196ccfe3.zip
Mechanism to detect low memory and cast out older page
Change-Id: Icce8e01f3d1cd2942f2b9ff802993da0441535ee Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/344 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Diffstat (limited to 'src/kernel/vmmmgr.C')
-rw-r--r--src/kernel/vmmmgr.C28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/kernel/vmmmgr.C b/src/kernel/vmmmgr.C
index 4009ff380..b2026944e 100644
--- a/src/kernel/vmmmgr.C
+++ b/src/kernel/vmmmgr.C
@@ -72,6 +72,16 @@ uint64_t VmmManager::findPhysicalAddress(uint64_t i_vaddr)
return Singleton<VmmManager>::instance()._findPhysicalAddress(i_vaddr);
}
+void VmmManager::castOutPages(VmmManager::castout_t i_ct)
+{
+ Singleton<VmmManager>::instance()._castOutPages(i_ct);
+}
+
+void VmmManager::flushPageTable( void )
+{
+ Singleton<VmmManager>::instance()._flushPageTable();
+}
+
/**
* STATIC
* @brief DEPRECATED
@@ -184,3 +194,21 @@ int VmmManager::_mmSetPermission(void* i_va, uint64_t i_size, PAGE_PERMISSIONS i
return rc;
}
+
+void VmmManager::_castOutPages(VmmManager::castout_t i_ct)
+{
+ lock.lock();
+
+ SegmentManager::castOutPages((uint64_t)i_ct);
+
+ lock.unlock();
+}
+
+void VmmManager::_flushPageTable( void )
+{
+ lock.lock();
+
+ PageTableManager::flush();
+
+ lock.unlock();
+}
OpenPOWER on IntegriCloud