aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.c
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2018-06-05 11:57:22 +0200
committerErlang/OTP <[email protected]>2018-06-05 11:57:22 +0200
commitcfd872e288006b0d051a4e5837d729fbbb66521f (patch)
tree84ac7cd53c13fe57f68a19d977c80fcb9077ef91 /erts/emulator/beam/erl_process.c
parent3d57a62f8ed1ee95096fbba68f179dc33f2b4dbd (diff)
parent7c485575e78b6537586bb0902658b890b22a2186 (diff)
downloadotp-cfd872e288006b0d051a4e5837d729fbbb66521f.tar.gz
otp-cfd872e288006b0d051a4e5837d729fbbb66521f.tar.bz2
otp-cfd872e288006b0d051a4e5837d729fbbb66521f.zip
Merge branch 'sverker/system-profile-bug/OTP-15085' into maint-20
* sverker/system-profile-bug/OTP-15085: erts: Fix bug in system_profile
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r--erts/emulator/beam/erl_process.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c
index 9b22f024b0..9f6adb03d0 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -7117,13 +7117,13 @@ change_proc_schedule_state(Process *p,
if (((n & (ERTS_PSFLG_SUSPENDED
| ERTS_PSFLG_ACTIVE)) == ERTS_PSFLG_ACTIVE)
- && (!(a & (ERTS_PSFLG_ACTIVE_SYS
- | ERTS_PSFLG_RUNNING
- | ERTS_PSFLG_RUNNING_SYS
- | ERTS_PSFLG_DIRTY_RUNNING
- | ERTS_PSFLG_DIRTY_RUNNING_SYS)
- && (!(a & ERTS_PSFLG_ACTIVE)
- || (a & ERTS_PSFLG_SUSPENDED))))) {
+ & ((a & (ERTS_PSFLG_SUSPENDED
+ | ERTS_PSFLG_ACTIVE)) != ERTS_PSFLG_ACTIVE)
+ & !(a & (ERTS_PSFLG_ACTIVE_SYS
+ | ERTS_PSFLG_RUNNING
+ | ERTS_PSFLG_RUNNING_SYS
+ | ERTS_PSFLG_DIRTY_RUNNING
+ | ERTS_PSFLG_DIRTY_RUNNING_SYS))) {
/* We activated a prevously inactive process */
profile_runnable_proc(p, am_active);
}