diff options
author | Björn-Egil Dahlberg <egil@erlang.org> | 2016-04-21 15:18:16 +0200 |
---|---|---|
committer | Björn-Egil Dahlberg <egil@erlang.org> | 2016-04-21 15:18:16 +0200 |
commit | 5b90345fe0e31c7d97ae41de1c53871c5815f126 (patch) | |
tree | ef3a0497426a62e1e310f1f3dd6a15001959d250 /erts | |
parent | f2cef11a16d8d5f643cdf913b46042db71bff867 (diff) | |
download | otp-5b90345fe0e31c7d97ae41de1c53871c5815f126.tar.gz otp-5b90345fe0e31c7d97ae41de1c53871c5815f126.tar.bz2 otp-5b90345fe0e31c7d97ae41de1c53871c5815f126.zip |
erts: Fix lock-order trace status
Diffstat (limited to 'erts')
-rw-r--r-- | erts/emulator/beam/erl_process.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index 1a66044627..d485affa3b 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -10932,9 +10932,7 @@ erl_create_process(Process* parent, /* Parent of process (default group leader). INITIALIZE_SHCOPY(info); #endif -#ifdef ERTS_SMP erts_smp_proc_lock(parent, ERTS_PROC_LOCKS_ALL_MINOR); -#endif /* * Check for errors. @@ -11235,6 +11233,8 @@ erl_create_process(Process* parent, /* Parent of process (default group leader). * Schedule process for execution. */ + erts_smp_proc_unlock(parent, locks & ERTS_PROC_LOCKS_ALL_MINOR); + schedule_process(p, state, 0); VERBOSE(DEBUG_PROCESSES, ("Created a new process: %T\n",p->common.id)); @@ -11248,6 +11248,7 @@ erl_create_process(Process* parent, /* Parent of process (default group leader). DTRACE2(process_spawn, process_name, mfa); } #endif + return res; error: |