diff options
author | Sverker Eriksson <[email protected]> | 2018-05-16 16:35:23 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2018-05-18 14:18:23 +0200 |
commit | 7c485575e78b6537586bb0902658b890b22a2186 (patch) | |
tree | 66dd22333f1e1c6c882989f97f31e6ec4a5dc850 /erts/emulator/beam | |
parent | da06fd040775fffee17409ebbd6fa797e34d6f99 (diff) | |
download | otp-7c485575e78b6537586bb0902658b890b22a2186.tar.gz otp-7c485575e78b6537586bb0902658b890b22a2186.tar.bz2 otp-7c485575e78b6537586bb0902658b890b22a2186.zip |
erts: Fix bug in system_profile
seen to cause redundant {profile,_,active,_,_} messages
when process is terminating.
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/erl_process.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index 54724fd62d..b0178c3fc1 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -6674,13 +6674,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); } |