app/kern/dispatch.js in flok-0.0.36 vs app/kern/dispatch.js in flok-0.0.38

- old
+ new

@@ -94,10 +94,20 @@ dump.push(out); gpu_q_rem -= n; } + //Send async queue + if (async_q.length > 0) { + var out = [5]; + for (var i = 0; i < async_q.length; ++i) { + out.push.apply(out, async_q[i]); + } + dump.push(out); + async_q = []; + } + if (dump.length != 0) { if_dispatch(dump); } } @@ -123,10 +133,12 @@ SEND("disk", "pong3"); } else if (arg1 == "cpu") { SEND("cpu", "pong3"); } else if (arg1 == "gpu") { SEND("gpu", "pong3"); + } else if (arg1 == "async") { + SEND("async", "pong3"); } } function ping4(arg1) { if (arg1 == "main") { @@ -137,10 +149,12 @@ SEND("disk", "pong4"); } else if (arg1 == "cpu") { SEND("cpu", "pong4"); } else if (arg1 == "gpu") { SEND("gpu", "pong4"); + } else if (arg1 == "async") { + SEND("async", "pong4"); } } function ping4_int(arg1) { if (arg1 == "main") { @@ -150,18 +164,20 @@ ++disk_q_rem; } else if (arg1 == "cpu") { ++cpu_q_rem; } else if (arg1 == "gpu") { ++gpu_q_rem; + } else if (arg1 == "async") { } } //Queue something to be sent out main_q = []; net_q = []; disk_q = []; cpu_q = []; gpu_q = []; +async_q = []; //Each queue has a max # of things that can be en-queued //These are decremented when the message is sent (not just queued) //and then re-incremented at the appropriate int_* mod entry. net_q_rem = 5;