aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2018-05-18 14:18:50 +0200
committerSverker Eriksson <[email protected]>2018-05-18 14:18:50 +0200
commita01ffa40c55380a9749c17458d0156443e415b5e (patch)
treee6dad056bfac919248131dddcaf09827f1efdd1c /erts/emulator/beam
parent329e9b36cccdf62b01dd3e9b28a2893654f2aa46 (diff)
parent7c485575e78b6537586bb0902658b890b22a2186 (diff)
downloadotp-a01ffa40c55380a9749c17458d0156443e415b5e.tar.gz
otp-a01ffa40c55380a9749c17458d0156443e415b5e.tar.bz2
otp-a01ffa40c55380a9749c17458d0156443e415b5e.zip
Merge branch 'sverker/system-profile-bug/OTP-15085'
* sverker/system-profile-bug/OTP-15085: erts: Fix bug in system_profile
Diffstat (limited to 'erts/emulator/beam')
-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 58a5369515..1478b71195 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -6614,13 +6614,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);
}