diff options
author | Doug Gilbert <dgilbert@us.ibm.com> | 2011-09-12 12:47:53 -0500 |
---|---|---|
committer | Douglas R. Gilbert <dgilbert@us.ibm.com> | 2011-09-19 16:05:34 -0500 |
commit | de8a529d349aebb344979609055f123c196ccfe3 (patch) | |
tree | b91665407f69730aaba8da794afc47240997dd47 /src/kernel/vmmmgr.C | |
parent | b754f8b47e343f449e5f05f67b948513363abd12 (diff) | |
download | talos-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.C | 28 |
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(); +} |