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/*
28 * ASSERTION:
29 * Tracing a module using the -m option.
30 *
31 * SECTION: dtrace Utility/-m Option
32 *
33 * NOTES: Manually check:
34 *
35 * 1) automated in tst.InvalidTraceModule1.d.ksh
36 * /usr/sbin/dtrace -m profile
37 * RESULT: invalid probe specifier
38 *
39 * 2)
40 * /usr/sbin/dtrace -m genunix
41 * RESULT: trace of all probes with module genunix.
42 *
43 * 3)
44 * /usr/sbin/dtrace -m vtrace:genunix
45 * RESULT: trace of probes with provider vtrace and module genunix.
46 *
47 * 4) automated in tst.InvalidTraceModule2.d.ksh
48 * /usr/sbin/dtrace -m :genunix::
49 * RESULT: invalid probe specifier
50 *
51 * 5)
52 * /usr/sbin/dtrace -m :genunix
53 * RESULT: trace of all probes with module genunix.
54 *
55 * 6) automated in tst.InvalidTraceModule3.d.ksh
56 * /usr/sbin/dtrace -m genunix::
57 * RESULT: invalid probe specifier
58 *
59 * 7) automated in tst.InvalidTraceModule4.d.ksh
60 * /usr/sbin/dtrace -m profile:::profile-97
61 * RESULT: not a valid probe description.
62 *
63 * 8)
64 * /usr/sbin/dtrace -m genunix -m unix
65 * RESULT: tracing of both genunix and unix probes.
66 *
67 * 9)
68 * /usr/sbin/dtrace -m genunix -m foounix
69 * RESULT: Number of probes matching the description genunix
70 * and an invalid probe specifier for foounix.
71 *
72 * 10) automated in tst.InvalidTraceModule5.d.ksh
73 * /usr/sbin/dtrace -m foounix -m unix
74 * RESULT: invalid probe specifier for foounix.
75 *
76 * 11) automated in tst.InvalidTraceModule6.d.ksh
77 * /usr/sbin/dtrace -m fbt:des:des3_crunch_block:return
78 * RESULT: invalid probe description.
79 *
80 * 12)
81 * /usr/sbin/dtrace -m fbt:genunix'{printf("FOUND");}'
82 * RESULT: tracing of all the probes matching provider fbt and module
83 * genunix.
84 *
85 * 13)
86 * /usr/sbin/dtrace -m genunix'{printf("FOUND");}'
87 * RESULT: tracing of all the probes matching module genunix with
88 * message FOUND
89 *
90 * 14)
91 * /usr/sbin/dtrace -m :genunix'{printf("FOUND");}'
92 * RESULT: tracing of all the probes matching module genunix with
93 * message FOUND
94 *
95 * 15) automated in tst.InvalidTraceModule7.d.ksh
96 * /usr/sbin/dtrace -m genunix::'{printf("FOUND");}'
97 * RESULT: invalid probe specifier.
98 *
99 * 16) automated in tst.InvalidTraceModule8.d.ksh
100 * /usr/sbin/dtrace -m genunix:'{printf("FOUND");}'
101 * RESULT: invalid probe specifier.
102 *
103 * 17)
104 * /usr/sbin/dtrace -m unix '{printf("FOUND");}'
105 * RESULT: invalid probe specifier.
106 *
107 * 18)
108 * /usr/sbin/dtrace -m
109 * unix'/probefunc == "preempt"/{printf("FOUND");}'
110 * RESULT: tracing of all the probes matching module genunix,
111 * probe function preempt with message FOUND.
112 */
113