diff --git a/src/runner.c b/src/runner.c
index f05a6bcb36587480513e4ce23acac8527f3a0913..17309d2c8c7e3517e20f7692ff77fab44b85601f 100644
--- a/src/runner.c
+++ b/src/runner.c
@@ -752,6 +752,9 @@ void runner_do_ghost(struct runner *r, struct cell *c, int timer) {
  */
 static void runner_do_unskip(struct cell *c, struct engine *e) {
 
+  /* Only operate on local cells */
+  if(c->nodeID != e->nodeID) return;
+
   /* Unskip any active tasks. */
   if (cell_is_active(c, e)) {
     const int forcerebuild = cell_unskip_tasks(c, &e->sched);