Actions
Bug #13578
opendtrace SDT probes missing argument types
Status:
New
Priority:
Normal
Assignee:
-
Category:
DTrace
Start date:
Due date:
% Done:
0%
Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:
Description
Quite a few dtrace SDT probes are missing argument types in their probe definitions. For example, all zfs SDT probes (though it's far from the only module):
[root@bob ~]# dtrace -vl -n sdt:zfs:dbuf_evict_one:dbuf-evict-one ID PROVIDER MODULE FUNCTION NAME 7917 sdt zfs dbuf_evict_one dbuf-evict-one Probe Description Attributes Identifier Names: Private Data Semantics: Private Dependency Class: Unknown Argument Attributes Identifier Names: Private Data Semantics: Private Dependency Class: ISA Argument Types None
For comparison,
[root@bob ~]# dtrace -vl -n op-Search-start ID PROVIDER MODULE FUNCTION NAME 8955 smb smbsrv smb_pre_search op-Search-start Probe Description Attributes Identifier Names: Private Data Semantics: Private Dependency Class: Unknown Argument Attributes Identifier Names: Evolving Data Semantics: Evolving Dependency Class: ISA Argument Types args[0]: conninfo_t * args[1]: smbopinfo_t *
This makes a significant number of SDT probes more difficult to use than they should be. Without the argument info, Dtrace cannot validate the correct use of the arguments to a probe and an operator must find the probe definitions in the source and manually cast the argN values.
It appears the problem is that arguments for all SDT probes in all modules must currently be defined in usr/src/uts/dtrace/sdt_subr.c
.
Related issues
Updated by Jason King almost 3 years ago
- Related to Bug #13577: Kernel SDT probes should be more modular added
Actions