aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2018-07-12 17:53:36 +0200
committerErlang/OTP <[email protected]>2018-07-12 17:53:36 +0200
commitca29e0090bbe797e38ebb1924fdd80ae62e12180 (patch)
tree0d47fe8729587576edf2821d502f71c5465d55f7
parent3808e82ff791a6ac869c4e045630df2c2c6172ce (diff)
parent70dec3aa35165ff0d6ec3cb792ac2b662349a7c2 (diff)
downloadotp-ca29e0090bbe797e38ebb1924fdd80ae62e12180.tar.gz
otp-ca29e0090bbe797e38ebb1924fdd80ae62e12180.tar.bz2
otp-ca29e0090bbe797e38ebb1924fdd80ae62e12180.zip
Merge branch 'john/erts/fix-dirty-reschedule-bug/OTP-15154' into maint-21
* john/erts/fix-dirty-reschedule-bug/OTP-15154: Move to a dirty scheduler even when we have pending system tasks
-rw-r--r--erts/emulator/beam/erl_process.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c
index 11b52526d5..8784eb5a63 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -9606,7 +9606,7 @@ Process *erts_schedule(ErtsSchedulerData *esdp, Process *p, int calls)
ASSERT(!p->scheduler_data);
p->scheduler_data = esdp;
if ((!!(state & ERTS_PSFLGS_DIRTY_WORK))
- & (!(state & ERTS_PSFLG_ACTIVE_SYS))) {
+ & (!(state & ERTS_PSFLG_RUNNING_SYS))) {
/* Migrate to dirty scheduler... */
sunlock_sched_out_proc:
erts_proc_unlock(p, ERTS_PROC_LOCK_STATUS);