summaryrefslogtreecommitdiffstats
path: root/src/include/kernel
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2012-07-13 21:28:37 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-07-16 14:00:44 -0500
commit1535c27d4a7a970f3e14ace7cb980ae06820e9ec (patch)
tree5cc9f264592f90f56c40bc12a50d1c6a6261b89a /src/include/kernel
parent7f482f9ad23bd7689fdee5982ad91f8506b2dfb8 (diff)
downloadtalos-hostboot-1535c27d4a7a970f3e14ace7cb980ae06820e9ec.tar.gz
talos-hostboot-1535c27d4a7a970f3e14ace7cb980ae06820e9ec.zip
Improve user-space page allocator.
* Allow page allocation system call to force coalesce if a contiguous block is unavailable. [long-term enhancement] * Workaround lack of large contiguous memory for PageTable test-cases, which require 256K, by allocating a VMM block. This should be removed when story 43401 is implemented. [short-term workaround] Change-Id: Idddb30eaa3aeac52d56b82a70355095f31d4a0cd Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1369 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include/kernel')
-rw-r--r--src/include/kernel/cpumgr.H8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/include/kernel/cpumgr.H b/src/include/kernel/cpumgr.H
index ca16d16d6..e4d2b8b0b 100644
--- a/src/include/kernel/cpumgr.H
+++ b/src/include/kernel/cpumgr.H
@@ -88,6 +88,13 @@ class CpuManager
static size_t getCpuCount() { return cv_cpuCount; }
+ /** @fn forceMemoryPeriodic()
+ * Force the memory free / coalesce operations to be performed on the
+ * next "periodic" interval.
+ */
+ static void forceMemoryPeriodic();
+
+
protected:
CpuManager();
~CpuManager() {}
@@ -106,6 +113,7 @@ class CpuManager
static Barrier cv_barrier; //!< barrier for cpus
static bool cv_defrag; //!< mem heap defrag
static size_t cv_cpuCount; //!< # of active CPUs
+ static bool cv_forcedMemPeriodic; //!< force free / coalesce.
// If a shutdown of all CPUs is requested
static bool cv_shutdown_requested;
OpenPOWER on IntegriCloud