Get rid of runner pointer, was only needed for process_get_state() during move
authorNick Downing <nick@ndcode.org>
Sun, 2 Jun 2019 03:27:36 +0000 (13:27 +1000)
committerNick Downing <nick@ndcode.org>
Sun, 2 Jun 2019 03:27:36 +0000 (13:27 +1000)
process.c
process.h

index 3641ed8..9868619 100644 (file)
--- a/process.c
+++ b/process.c
@@ -15,7 +15,7 @@ int process_avail;
 
 struct lru_item lru_head;
 
-struct process *runner, *victim;
+struct process *victim;
 
 void process_init(int n, int spare) {
   processes = calloc(n, sizeof(struct process));
@@ -445,7 +445,7 @@ bool process_realloc(struct process *process, int paras, bool dir) {
 }
 
 void process_run(struct process *process) {
-  int blocks, runner_core_blocks;
+  int blocks, process_core_blocks;
   int swap_base, core_base;
   int paras;
 #ifndef INDIRECT_CORE
@@ -492,8 +492,7 @@ void process_run(struct process *process) {
         blocks = process->swap_blocks;
 
       // add to core pool
-      runner = process;
-      runner_core_blocks = 0;
+      process_core_blocks = 0;
 #ifndef INDIRECT_CORE
       rassert(
         pool_alloc(
@@ -510,8 +509,7 @@ void process_run(struct process *process) {
     assert(process->swap_blocks);
 
     // victim, take over the dedicated pool items
-    runner = victim;
-    runner_core_blocks =
+    process_core_blocks =
 #ifndef INDIRECT_CORE
       victim->core_item.limit - victim->core_item.base;
 #else /* INDIRECT_CORE */
@@ -538,7 +536,7 @@ void process_run(struct process *process) {
         pool_alloc(
           &core_table,
           &process->core_item,
-          runner_core_blocks + blocks,
+          process_core_blocks + blocks,
             POOL_ALLOC_MODE_MOVEABLE |
             POOL_ALLOC_MODE_REALLOC
         )
@@ -553,7 +551,7 @@ void process_run(struct process *process) {
 #else /* INDIRECT_CORE */
       core_base = process->core_item.limit - process->swap_blocks;
 #endif /* INDIRECT_CORE */
-      runner_core_blocks += blocks;
+      process_core_blocks += blocks;
       process->swap_blocks -= blocks;
       paras = blocks << BLOCK_PARAS_SHIFT;
 
@@ -639,7 +637,6 @@ void process_run(struct process *process) {
 #endif /* INDIRECT_CORE */
     } while (process->swap_blocks);
   }
-  runner = NULL;
 
   // insert at head of LRU list
   process->lru_item.prev = &lru_head;
index a3c6120..59df5e3 100644 (file)
--- a/process.h
+++ b/process.h
@@ -53,7 +53,7 @@ extern int process_avail;
 
 extern struct lru_item lru_head;
 
-extern struct process *runner, *victim;
+extern struct process *victim;
 
 void process_init(int n, int spare);
 bool process_alloc(struct process *process, int para, int paras);