summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nest/proto.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/nest/proto.c b/nest/proto.c
index 76120fa..cbafeb3 100644
--- a/nest/proto.c
+++ b/nest/proto.c
@@ -319,6 +319,12 @@ proto_notify_state(struct proto *p, unsigned ps)
ASSERT(ops == PS_DOWN || ops == PS_START);
ASSERT(cs == FS_HUNGRY);
DBG("%s: Scheduling meal\n", p->name);
+ if (p->proto->priority) /* FIXME: Terrible hack to get synchronous device/kernel startup! */
+ {
+ p->core_state = FS_FEEDING;
+ proto_feed(p);
+ return;
+ }
cs = FS_FEEDING;
p->attn->hook = proto_feed;
ev_schedule(p->attn);