From 7d7e80a718206bc068d0ea3d1e1d80d512257df3 Mon Sep 17 00:00:00 2001
From: Matthieu Schaller <matthieu.schaller@durham.ac.uk>
Date: Tue, 17 Jan 2017 14:19:04 +0000
Subject: [PATCH] More missing appearances of the new task in MPI mode.

---
 src/engine.c    | 2 +-
 src/scheduler.c | 8 ++++++++
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/engine.c b/src/engine.c
index 5178de914e..e9e3f15c2e 100644
--- a/src/engine.c
+++ b/src/engine.c
@@ -2666,7 +2666,7 @@ void engine_init_particles(struct engine *e, int flag_entropy_ICs) {
   clocks_gettime(&time2);
 
   /* Ready to go */
-  e->step = -1;
+  e->step = 0;
   e->forcerebuild = 1;
   e->wallclock_time = (float)clocks_diff(&time1, &time2);
 
diff --git a/src/scheduler.c b/src/scheduler.c
index 18c6613363..c2fe4126ce 100644
--- a/src/scheduler.c
+++ b/src/scheduler.c
@@ -135,6 +135,7 @@ static void scheduler_splittask(struct task *t, struct scheduler *s) {
         ((t->type == task_type_kick1) && t->ci->nodeID != s->nodeID) ||
         ((t->type == task_type_kick2) && t->ci->nodeID != s->nodeID) ||
         ((t->type == task_type_drift) && t->ci->nodeID != s->nodeID) ||
+        ((t->type == task_type_timestep) && t->ci->nodeID != s->nodeID) ||
         ((t->type == task_type_init) && t->ci->nodeID != s->nodeID)) {
       t->type = task_type_none;
       t->skip = 1;
@@ -964,12 +965,18 @@ void scheduler_reweight(struct scheduler *s, int verbose) {
       case task_type_ghost:
         if (t->ci == t->ci->super) cost = wscale * t->ci->count;
         break;
+      case task_type_drift:
+        cost = wscale * t->ci->count;
+        break;
       case task_type_kick1:
         cost = wscale * t->ci->count;
         break;
       case task_type_kick2:
         cost = wscale * t->ci->count;
         break;
+      case task_type_timestep:
+        cost = wscale * t->ci->count;
+        break;
       case task_type_init:
         cost = wscale * t->ci->count;
         break;
@@ -1165,6 +1172,7 @@ void scheduler_enqueue(struct scheduler *s, struct task *t) {
       case task_type_kick1:
       case task_type_kick2:
       case task_type_drift:
+      case task_type_timestep:
       case task_type_init:
         qid = t->ci->super->owner;
         break;
-- 
GitLab