1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22/*
23 * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
24 * Use is subject to license terms.
25 */
26
27#pragma ident	"%Z%%M%	%I%	%E% SMI"
28
29/*
30 * ASSERTION:
31 * Tracing a module using the -m option.
32 *
33 * SECTION: dtrace Utility/-m Option
34 *
35 * NOTES: Manually check:
36 *
37 * 1) automated in tst.InvalidTraceModule1.d.ksh
38 * /usr/sbin/dtrace -m profile
39 * RESULT: invalid probe specifier
40 *
41 * 2)
42 * /usr/sbin/dtrace -m genunix
43 * RESULT: trace of all probes with module genunix.
44 *
45 * 3)
46 * /usr/sbin/dtrace -m vtrace:genunix
47 * RESULT: trace of probes with provider vtrace and module genunix.
48 *
49 * 4) automated in tst.InvalidTraceModule2.d.ksh
50 * /usr/sbin/dtrace -m :genunix::
51 * RESULT: invalid probe specifier
52 *
53 * 5)
54 * /usr/sbin/dtrace -m :genunix
55 * RESULT: trace of all probes with module genunix.
56 *
57 * 6) automated in tst.InvalidTraceModule3.d.ksh
58 * /usr/sbin/dtrace -m genunix::
59 * RESULT: invalid probe specifier
60 *
61 * 7) automated in tst.InvalidTraceModule4.d.ksh
62 * /usr/sbin/dtrace -m profile:::profile-97
63 * RESULT: not a valid probe description.
64 *
65 * 8)
66 * /usr/sbin/dtrace -m genunix -m unix
67 * RESULT: tracing of both genunix and unix probes.
68 *
69 * 9)
70 * /usr/sbin/dtrace -m genunix -m foounix
71 * RESULT: Number of probes matching the description genunix
72 * and an invalid probe specifier for foounix.
73 *
74 * 10) automated in tst.InvalidTraceModule5.d.ksh
75 * /usr/sbin/dtrace -m foounix -m unix
76 * RESULT: invalid probe specifier for foounix.
77 *
78 * 11) automated in tst.InvalidTraceModule6.d.ksh
79 * /usr/sbin/dtrace -m fbt:des:des3_crunch_block:return
80 * RESULT: invalid probe description.
81 *
82 * 12)
83 * /usr/sbin/dtrace -m fbt:genunix'{printf("FOUND");}'
84 * RESULT: tracing of all the probes matching provider fbt and module
85 * genunix.
86 *
87 * 13)
88 * /usr/sbin/dtrace -m genunix'{printf("FOUND");}'
89 * RESULT: tracing of all the probes matching module genunix with
90 * message FOUND
91 *
92 * 14)
93 * /usr/sbin/dtrace -m :genunix'{printf("FOUND");}'
94 * RESULT: tracing of all the probes matching module genunix with
95 * message FOUND
96 *
97 * 15) automated in tst.InvalidTraceModule7.d.ksh
98 * /usr/sbin/dtrace -m genunix::'{printf("FOUND");}'
99 * RESULT: invalid probe specifier.
100 *
101 * 16) automated in tst.InvalidTraceModule8.d.ksh
102 * /usr/sbin/dtrace -m genunix:'{printf("FOUND");}'
103 * RESULT: invalid probe specifier.
104 *
105 * 17)
106 * /usr/sbin/dtrace -m unix '{printf("FOUND");}'
107 * RESULT: invalid probe specifier.
108 *
109 * 18)
110 * /usr/sbin/dtrace -m
111 * unix'/probefunc == "preempt"/{printf("FOUND");}'
112 * RESULT: tracing of all the probes matching module genunix,
113 * probe function preempt with message FOUND.
114 */
115