aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/beam_emu.c
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2018-04-13 13:36:29 +0200
committerRickard Green <[email protected]>2018-04-13 13:36:29 +0200
commitfa26cb5a3f7550d5779dce7de748bf91a4bc405e (patch)
tree75d1aa05f03495479348d5f957e4931118b69b2a /erts/emulator/beam/beam_emu.c
parent30fd5b9e98268305762b9647d1bf40df665ae54d (diff)
parent9f8a402cc3e49313089bb9e22bc625f07beea4ca (diff)
downloadotp-fa26cb5a3f7550d5779dce7de748bf91a4bc405e.tar.gz
otp-fa26cb5a3f7550d5779dce7de748bf91a4bc405e.tar.bz2
otp-fa26cb5a3f7550d5779dce7de748bf91a4bc405e.zip
Merge branch 'rickard/process_info/OTP-14966'
* rickard/process_info/OTP-14966: New process_info() implementation using signals
Diffstat (limited to 'erts/emulator/beam/beam_emu.c')
-rw-r--r--erts/emulator/beam/beam_emu.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/erts/emulator/beam/beam_emu.c b/erts/emulator/beam/beam_emu.c
index fb87be3f17..ee287243a4 100644
--- a/erts/emulator/beam/beam_emu.c
+++ b/erts/emulator/beam/beam_emu.c
@@ -2420,8 +2420,7 @@ erts_hibernate(Process* c_p, Eterm* reg)
* shrink the heap.
*/
erts_proc_lock(c_p, ERTS_PROC_LOCK_MSGQ|ERTS_PROC_LOCK_STATUS);
- erts_proc_sig_fetch(c_p);
- if (!c_p->sig_qs.len) {
+ if (!erts_proc_sig_fetch(c_p)) {
erts_proc_unlock(c_p, ERTS_PROC_LOCK_MSGQ|ERTS_PROC_LOCK_STATUS);
c_p->fvalue = NIL;
PROCESS_MAIN_CHK_LOCKS(c_p);
@@ -2429,8 +2428,7 @@ erts_hibernate(Process* c_p, Eterm* reg)
ERTS_VERIFY_UNUSED_TEMP_ALLOC(c_p);
PROCESS_MAIN_CHK_LOCKS(c_p);
erts_proc_lock(c_p, ERTS_PROC_LOCK_MSGQ|ERTS_PROC_LOCK_STATUS);
- erts_proc_sig_fetch(c_p);
- if (!c_p->sig_qs.len)
+ if (!erts_proc_sig_fetch(c_p))
erts_atomic32_read_band_relb(&c_p->state, ~ERTS_PSFLG_ACTIVE);
ASSERT(!ERTS_PROC_IS_EXITING(c_p));
}