diff options
author | Sverker Eriksson <sverker@erlang.org> | 2013-04-09 17:00:33 +0200 |
---|---|---|
committer | Sverker Eriksson <sverker@erlang.org> | 2013-04-11 14:50:03 +0200 |
commit | 0e9c7394b12d627b08a5f1acd1ba1c21dbfd6e2a (patch) | |
tree | e299b727423f58a92f94815558591b44941154eb /erts | |
parent | 4ac91e4fc710a2fb5a3e30ac7025e52f466344cb (diff) | |
download | otp-0e9c7394b12d627b08a5f1acd1ba1c21dbfd6e2a.tar.gz otp-0e9c7394b12d627b08a5f1acd1ba1c21dbfd6e2a.tar.bz2 otp-0e9c7394b12d627b08a5f1acd1ba1c21dbfd6e2a.zip |
erts: Change locking order for "port_table" and "port_sched_lock"
Keep order between the two but move them before all the allocation locks.
Old order violated for "port_table" lock in ptab_list_bif_engine().
Diffstat (limited to 'erts')
-rw-r--r-- | erts/emulator/beam/erl_lock_check.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_lock_check.c b/erts/emulator/beam/erl_lock_check.c index 69bb4be717..a1d270adba 100644 --- a/erts/emulator/beam/erl_lock_check.c +++ b/erts/emulator/beam/erl_lock_check.c @@ -143,6 +143,8 @@ static erts_lc_lock_order_t erts_lock_order[] = { { "ptimer_pre_alloc_lock", "address", }, { "btm_pre_alloc_lock", NULL, }, { "dist_entry_out_queue", "address" }, + { "port_sched_lock", "port_id" }, + { "port_table", NULL }, #endif { "mtrace_op", NULL }, { "instr_x", NULL }, @@ -154,10 +156,8 @@ static erts_lc_lock_order_t erts_lock_order[] = { { "pmmap", NULL }, #endif #ifdef ERTS_SMP - { "port_sched_lock", "port_id" }, { "port_task_pre_alloc_lock", "address" }, { "proclist_pre_alloc_lock", "address" }, - { "port_table", NULL }, { "xports_list_pre_alloc_lock", "address" }, { "inet_buffer_stack_lock", NULL }, { "gc_info", NULL }, |