diff options
author | Rickard Green <[email protected]> | 2017-06-01 19:29:36 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2017-06-01 19:29:36 +0200 |
commit | c8f1d8218a2aa01a2b8d4f65af6e07e5ca2b631e (patch) | |
tree | 006faab3bd003ca76128e9cfa14715a78ddb6d19 /erts/emulator/beam/erl_process.c | |
parent | f4836a7883842f0e2ae20285ccedf9856c66b24a (diff) | |
download | otp-c8f1d8218a2aa01a2b8d4f65af6e07e5ca2b631e.tar.gz otp-c8f1d8218a2aa01a2b8d4f65af6e07e5ca2b631e.tar.bz2 otp-c8f1d8218a2aa01a2b8d4f65af6e07e5ca2b631e.zip |
Do not GC hibernated process from other processes
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r-- | erts/emulator/beam/erl_process.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index d583118e7b..bce4e7fff3 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -10059,7 +10059,8 @@ execute_sys_tasks(Process *c_p, erts_aint32_t *statep, int in_reds) reds++; } else { - if (!garbage_collected) { + if (!garbage_collected + && !(c_p->flags & F_HIBERNATED)) { FLAGS(c_p) |= F_NEED_FULLSWEEP; reds += erts_garbage_collect(c_p, 0, |