diff options
author | Björn-Egil Dahlberg <egil@erlang.org> | 2016-04-22 12:25:26 +0200 |
---|---|---|
committer | Björn-Egil Dahlberg <egil@erlang.org> | 2016-04-22 12:25:26 +0200 |
commit | 1d51d64979116d14258555c0c61e2a911110424b (patch) | |
tree | ab4ca360f74ee0d58a0c256f768be4e45a83c0db | |
parent | 7f5c1b2084b389cdd13dd9f98adfeaf2c7d00fdc (diff) | |
parent | 5b90345fe0e31c7d97ae41de1c53871c5815f126 (diff) | |
download | otp-1d51d64979116d14258555c0c61e2a911110424b.tar.gz otp-1d51d64979116d14258555c0c61e2a911110424b.tar.bz2 otp-1d51d64979116d14258555c0c61e2a911110424b.zip |
Merge branch 'egil/fix-lock-order-trace-status'
* egil/fix-lock-order-trace-status:
erts: Fix lock-order trace status
-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: |