diff --git a/src/cell.c b/src/cell.c index 9b1ab4f50f70f68c134161f36a9ad4a01e602d91..47e4f8bcafa7353b6d5f46c28d1ee14953716f84 100644 --- a/src/cell.c +++ b/src/cell.c @@ -1681,8 +1681,8 @@ int cell_unskip_tasks(struct cell *c, struct scheduler *s) { cj->dx_max_sort_old = cj->dx_max_sort; /* Activate the drift tasks. */ - cell_activate_drift_part(ci, s); - cell_activate_drift_part(cj, s); + if (ci->nodeID == engine_rank) cell_activate_drift_part(ci, s); + if (cj->nodeID == engine_rank) cell_activate_drift_part(cj, s); /* Check the sorts and activate them if needed. */ cell_activate_sorts(ci, t->flags, s); diff --git a/src/engine.c b/src/engine.c index 441b09f44e84f1381372f8c47a7e09e319af3446..8bc40f293e8a5437238adea9bc92568665f1d8e4 100644 --- a/src/engine.c +++ b/src/engine.c @@ -2578,8 +2578,8 @@ void engine_marktasks_mapper(void *map_data, int num_elements, cj->dx_max_sort_old = cj->dx_max_sort; /* Activate the drift tasks. */ - cell_activate_drift_part(ci, s); - cell_activate_drift_part(cj, s); + if (ci->nodeID == engine_rank) cell_activate_drift_part(ci, s); + if (cj->nodeID == engine_rank) cell_activate_drift_part(cj, s); /* Activate the sorts where needed. */ cell_activate_sorts(ci, t->flags, s);