diff options
author | Björn Gustavsson <[email protected]> | 2012-03-21 14:26:47 +0100 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2012-03-22 18:16:16 +0100 |
commit | 1e653c3539423e4cfdeab1d232483bcac0e8b073 (patch) | |
tree | 72526f18a3bee00399972b09912e11322023d48c /erts/emulator/beam/erlang_dtrace.d | |
parent | 848f6e541f779e13f7d99bbd0c99ac37a9bd56e8 (diff) | |
download | otp-1e653c3539423e4cfdeab1d232483bcac0e8b073.tar.gz otp-1e653c3539423e4cfdeab1d232483bcac0e8b073.tar.bz2 otp-1e653c3539423e4cfdeab1d232483bcac0e8b073.zip |
Use distinct function-entry probes for local and global calls
It seems useful to be able to filter out (for example) just
the global calls.
Diffstat (limited to 'erts/emulator/beam/erlang_dtrace.d')
-rw-r--r-- | erts/emulator/beam/erlang_dtrace.d | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/erts/emulator/beam/erlang_dtrace.d b/erts/emulator/beam/erlang_dtrace.d index d8508426f4..587e51cb67 100644 --- a/erts/emulator/beam/erlang_dtrace.d +++ b/erts/emulator/beam/erlang_dtrace.d @@ -149,13 +149,23 @@ provider erlang { /* PID, Module, Function, Arity */ /** - * Fired whenever a user function is being called. + * Fired whenever a user function is being called locally. * * @param p the PID (string form) of the process * @param mfa the m:f/a of the function * @param depth the stack depth */ - probe function__entry(char *p, char *mfa, int depth); + probe local__function__entry(char *p, char *mfa, int depth); + + /** + * Fired whenever a user function is called externally + * (through an export entry). + * + * @param p the PID (string form) of the process + * @param mfa the m:f/a of the function + * @param depth the stack depth + */ + probe global__function__entry(char *p, char *mfa, int depth); /** * Fired whenever a user function returns. |