diff options
author | Rickard Green <[email protected]> | 2017-01-12 15:18:54 +0100 |
---|---|---|
committer | Rickard Green <[email protected]> | 2017-01-12 15:18:54 +0100 |
commit | a3cccab21df2f18eeb38de0f28fb70480f3676d2 (patch) | |
tree | 4a9ce59d594fd027cfa79992d7c831a1441382ce /erts/emulator/beam/erl_bif_trace.c | |
parent | a8477127f917e7d660697089e2c8d8a1cd08aae9 (diff) | |
parent | ca8fbd7e5835ac4e33e9041eabe87eb289a6b251 (diff) | |
download | otp-a3cccab21df2f18eeb38de0f28fb70480f3676d2.tar.gz otp-a3cccab21df2f18eeb38de0f28fb70480f3676d2.tar.bz2 otp-a3cccab21df2f18eeb38de0f28fb70480f3676d2.zip |
Merge branch 'maint'
* maint:
Fix call time tracing with dirty schedulers
Diffstat (limited to 'erts/emulator/beam/erl_bif_trace.c')
-rw-r--r-- | erts/emulator/beam/erl_bif_trace.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_bif_trace.c b/erts/emulator/beam/erl_bif_trace.c index b1c2c427b0..a480754bdb 100644 --- a/erts/emulator/beam/erl_bif_trace.c +++ b/erts/emulator/beam/erl_bif_trace.c @@ -1061,9 +1061,16 @@ trace_info_func(Process* p, Eterm func_spec, Eterm key) erts_smp_thr_progress_block(); } #endif +#ifdef ERTS_DIRTY_SCHEDULERS + erts_smp_mtx_lock(&erts_dirty_bp_ix_mtx); +#endif + r = function_is_traced(p, mfa, &ms, &ms_meta, &meta, &count, &call_time); +#ifdef ERTS_DIRTY_SCHEDULERS + erts_smp_mtx_unlock(&erts_dirty_bp_ix_mtx); +#endif #ifdef ERTS_SMP if ( (key == am_call_time) || (key == am_all)) { erts_smp_thr_progress_unblock(); |