aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/sys/ose/sys.c
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2014-02-10 18:48:44 +0100
committerLukas Larsson <[email protected]>2014-02-24 15:16:06 +0100
commit3b0eb33f899f361d5006824782e1ef1d16f57e5c (patch)
tree01166643668f04b90fafcc3c5bcd954187dbd0c9 /erts/emulator/sys/ose/sys.c
parent15350e561e8a8feca4a8073ec9db68fa92ed976f (diff)
downloadotp-3b0eb33f899f361d5006824782e1ef1d16f57e5c.tar.gz
otp-3b0eb33f899f361d5006824782e1ef1d16f57e5c.tar.bz2
otp-3b0eb33f899f361d5006824782e1ef1d16f57e5c.zip
ose: Cleanup POLL_SCHED_1 code
Now schedulers 2..N make sure to wake sched 1 if they find that all io has been consumed and sched 1 is sleeping. Before sched 1 was spinning in sys_schedule waiting for sched 2..N to finish consuming io jobs
Diffstat (limited to 'erts/emulator/sys/ose/sys.c')
-rw-r--r--erts/emulator/sys/ose/sys.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/erts/emulator/sys/ose/sys.c b/erts/emulator/sys/ose/sys.c
index ad82e4587d..beb7f5944f 100644
--- a/erts/emulator/sys/ose/sys.c
+++ b/erts/emulator/sys/ose/sys.c
@@ -1732,6 +1732,7 @@ erl_sys_schedule(int runnable)
{
ASSERT(get_fsem(current_process()) == 0);
#ifdef ERTS_SMP
+ ASSERT(erts_get_scheduler_data()->no == 1);
ERTS_CHK_IO(!runnable);
#else
ERTS_CHK_IO( 1 );