aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.h
diff options
context:
space:
mode:
authorJohn Högberg <[email protected]>2018-04-10 11:50:56 +0200
committerJohn Högberg <[email protected]>2018-04-16 15:44:56 +0200
commita7e0369000282c22e784a769b0e41598df1682e9 (patch)
tree0f4ede9985ac64b3b0d20967e7374ec0ed19868c /erts/emulator/beam/erl_process.h
parent9128efbb8dadc819938820af0d9de9128e72eb07 (diff)
downloadotp-a7e0369000282c22e784a769b0e41598df1682e9.tar.gz
otp-a7e0369000282c22e784a769b0e41598df1682e9.tar.bz2
otp-a7e0369000282c22e784a769b0e41598df1682e9.zip
erts: Keep track of which NIF a scheduler is executing
This may be of interest in crash dumps and allows the upcoming allocation tagging feature to track allocations on a per-NIF basis. Note that this is only updated when user code calls a NIF; it's not altered when the emulator calls NIFs during code upgrades or tracing.
Diffstat (limited to 'erts/emulator/beam/erl_process.h')
-rw-r--r--erts/emulator/beam/erl_process.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_process.h b/erts/emulator/beam/erl_process.h
index e232776016..bb97b6690c 100644
--- a/erts/emulator/beam/erl_process.h
+++ b/erts/emulator/beam/erl_process.h
@@ -637,6 +637,7 @@ struct ErtsSchedulerData_ {
ErtsSchedType type;
Uint no; /* Scheduler number for normal schedulers */
Uint dirty_no; /* Scheduler number for dirty schedulers */
+ struct enif_environment_t *current_nif;
Process *dirty_shadow_process;
Port *current_port;
ErtsRunQueue *run_queue;