diff options
author | Sverker Eriksson <[email protected]> | 2018-04-20 14:53:05 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2018-04-20 14:53:05 +0200 |
commit | aaf865a53a5be8d15afa5ff688cb3bdd672f4d18 (patch) | |
tree | 51202fa84c647ff6ba198a0ccd8051bbb84afa80 | |
parent | 21754c8d402855af5081dad0aff465a8f0f7eda7 (diff) | |
download | otp-aaf865a53a5be8d15afa5ff688cb3bdd672f4d18.tar.gz otp-aaf865a53a5be8d15afa5ff688cb3bdd672f4d18.tar.bz2 otp-aaf865a53a5be8d15afa5ff688cb3bdd672f4d18.zip |
erts: Fix run queue pointer in proxy process
proc->run_queue detected as uninitialized by valgrind
but seems harmless in practice as it's not used for proxy processes.
"Bug" introduced in OTP-17 by ca0425c6ff85262bc15367f5fd9cbc51cde52b20
and made worse (but still harmless) in master for OTP-21
at fbb10ebc4a37555c7ea7f99e14286d862993976a.
-rw-r--r-- | erts/emulator/beam/erl_process.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index 71541786d0..e8f58a196a 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -6093,7 +6093,7 @@ make_proxy_proc(Process *prev_proxy, Process *proc, erts_aint32_t prio) proxy = prev_proxy; ASSERT(erts_atomic32_read_nob(&proxy->state) & ERTS_PSFLG_PROXY); erts_atomic32_set_nob(&proxy->state, state); - (void) erts_set_runq_proc(proc, rq, &bound); + (void) erts_set_runq_proc(proxy, rq, &bound); } else { proxy = erts_alloc(ERTS_ALC_T_PROC, sizeof(Process)); @@ -6106,7 +6106,7 @@ make_proxy_proc(Process *prev_proxy, Process *proc, erts_aint32_t prio) } #endif erts_atomic32_init_nob(&proxy->state, state); - erts_init_runq_proc(proc, rq, bound); + erts_init_runq_proc(proxy, rq, bound); } proxy->common.id = proc->common.id; |