xref: /titanic_44/usr/src/cmd/smbsrv/fksmbd/Watch-pipesvc.d (revision 68b2bbf26c7040fea4281dcb58b81e7627e46f34)
1*68b2bbf2SGordon Ross #!/usr/sbin/dtrace -s
2*68b2bbf2SGordon Ross /*
3*68b2bbf2SGordon Ross  * This file and its contents are supplied under the terms of the
4*68b2bbf2SGordon Ross  * Common Development and Distribution License ("CDDL"), version 1.0.
5*68b2bbf2SGordon Ross  * You may only use this file in accordance with the terms of version
6*68b2bbf2SGordon Ross  * 1.0 of the CDDL.
7*68b2bbf2SGordon Ross  *
8*68b2bbf2SGordon Ross  * A full copy of the text of the CDDL should have accompanied this
9*68b2bbf2SGordon Ross  * source.  A copy of the CDDL is also available via the Internet at
10*68b2bbf2SGordon Ross  * http://www.illumos.org/license/CDDL.
11*68b2bbf2SGordon Ross  */
12*68b2bbf2SGordon Ross 
13*68b2bbf2SGordon Ross /*
14*68b2bbf2SGordon Ross  * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
15*68b2bbf2SGordon Ross  */
16*68b2bbf2SGordon Ross 
17*68b2bbf2SGordon Ross /*
18*68b2bbf2SGordon Ross  * User-level dtrace for smbd
19*68b2bbf2SGordon Ross  * Usage: dtrace -s ThisScript.d -p PID
20*68b2bbf2SGordon Ross  */
21*68b2bbf2SGordon Ross 
22*68b2bbf2SGordon Ross #pragma D option flowindent
23*68b2bbf2SGordon Ross 
24*68b2bbf2SGordon Ross pid$target:fksmbd:pipesvc_worker:entry
25*68b2bbf2SGordon Ross {
26*68b2bbf2SGordon Ross   self->trace++;
27*68b2bbf2SGordon Ross }
28*68b2bbf2SGordon Ross pid$target:fksmbd:pipesvc_worker:return
29*68b2bbf2SGordon Ross {
30*68b2bbf2SGordon Ross   self->trace--;
31*68b2bbf2SGordon Ross }
32*68b2bbf2SGordon Ross 
33*68b2bbf2SGordon Ross pid$target:fksmbd::entry,
34*68b2bbf2SGordon Ross pid$target:libfksmbsrv.so.1::entry,
35*68b2bbf2SGordon Ross pid$target:libmlsvc.so.1::entry,
36*68b2bbf2SGordon Ross pid$target:libmlrpc.so.1::entry,
37*68b2bbf2SGordon Ross pid$target:libsmbns.so.1::entry,
38*68b2bbf2SGordon Ross pid$target:libsmb.so.1::entry
39*68b2bbf2SGordon Ross /self->trace/
40*68b2bbf2SGordon Ross {
41*68b2bbf2SGordon Ross   printf("\t0x%x", arg0);
42*68b2bbf2SGordon Ross   printf("\t0x%x", arg1);
43*68b2bbf2SGordon Ross   printf("\t0x%x", arg2);
44*68b2bbf2SGordon Ross   printf("\t0x%x", arg3);
45*68b2bbf2SGordon Ross }
46*68b2bbf2SGordon Ross 
47*68b2bbf2SGordon Ross pid$target:fksmbd::return,
48*68b2bbf2SGordon Ross pid$target:libfksmbsrv.so.1::return,
49*68b2bbf2SGordon Ross pid$target:libmlsvc.so.1::return,
50*68b2bbf2SGordon Ross pid$target:libmlrpc.so.1::return,
51*68b2bbf2SGordon Ross pid$target:libsmbns.so.1::return,
52*68b2bbf2SGordon Ross pid$target:libsmb.so.1::return
53*68b2bbf2SGordon Ross /self->trace/
54*68b2bbf2SGordon Ross {
55*68b2bbf2SGordon Ross   printf("\t0x%x", arg1);
56*68b2bbf2SGordon Ross }
57*68b2bbf2SGordon Ross 
58*68b2bbf2SGordon Ross pid$target:libmlrpc.so.1:ndo_trace:entry
59*68b2bbf2SGordon Ross /self->trace/
60*68b2bbf2SGordon Ross {
61*68b2bbf2SGordon Ross   printf("ndo_trace: %s", copyinstr(arg0));
62*68b2bbf2SGordon Ross }
63