Print this page
Build provider 3rd arg from smb_request_t
hacking...
NEX-1643 dtrace provider for smbsrv
Also illumos 1841:
 DTrace smb provider was mis-implemented, doesn't exist.
Add back handlers for read/write raw, so that
 legacy dtrace consumers can find the probes.
Kill extra arg in smb_negotiate
Fix missing "done" probe with smb_notify
Add example consumer: smb-trace.d
fix soi_pid

*** 113,135 **** *op->sd = sd; } else { op->sd = NULL; } ! DTRACE_SMB_2(op__NtTransactCreate__start, smb_request_t *, sr, ! struct open_param *, op); return ((rc == 0) ? SDRC_SUCCESS : SDRC_ERROR); } void smb_post_nt_transact_create(smb_request_t *sr, smb_xa_t *xa) { smb_sd_t *sd = sr->arg.open.sd; ! DTRACE_SMB_2(op__NtTransactCreate__done, smb_request_t *, sr, ! smb_xa_t *, xa); if (sd) { smb_sd_term(sd); kmem_free(sd, sizeof (smb_sd_t)); } --- 113,134 ---- *op->sd = sd; } else { op->sd = NULL; } ! DTRACE_SMB_1(op__NtTransactCreate__start, smb_request_t *, sr); /* arg.open */ return ((rc == 0) ? SDRC_SUCCESS : SDRC_ERROR); } void smb_post_nt_transact_create(smb_request_t *sr, smb_xa_t *xa) { smb_sd_t *sd = sr->arg.open.sd; + _NOTE(ARGUNUSED(xa)) ! DTRACE_SMB_1(op__NtTransactCreate__done, smb_request_t *, sr); if (sd) { smb_sd_term(sd); kmem_free(sd, sizeof (smb_sd_t)); }