dmake: do not set MAKEFLAGS=k
[unleashed/tickless.git] / usr / src / cmd / dtrace / test / tst / common / misc / tst.enablerace.ksh
blobb4d56bb6eedd6551a9ef707ca3be42fd0474c162
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
23 # Copyright 2006 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
26 #ident "%Z%%M% %I% %E% SMI"
29 # This script attempts to tease out a race when probes are initially enabled.
31 script()
34 # Nauseatingly, the #defines below must be in the 0th column to
35 # satisfy the ancient cpp that -C defaults to.
37 $dtrace -C -s /dev/stdin <<EOF
38 #define PROF1 profile:::profile-4000hz
39 #define PROF4 PROF1, PROF1, PROF1, PROF1
40 #define PROF16 PROF4, PROF4, PROF4, PROF4
41 #define PROF64 PROF16, PROF16, PROF16, PROF16
42 #define PROF256 PROF64, PROF64, PROF64, PROF64
43 #define PROF512 PROF256, PROF256
45 PROF1
47 this->x = 0;
50 PROF512
52 this->x++;
55 PROF1
56 /this->x != 512/
58 printf("failed! x is %d (expected 512)", this->x);
59 exit(1);
62 tick-1sec
63 /secs++/
65 exit(0);
67 EOF
70 if [ $# != 1 ]; then
71 echo expected one argument: '<'dtrace-path'>'
72 exit 2
75 dtrace=$1
76 let i=0
78 while [ "$i" -lt 20 ]; do
79 script
80 status=$?
82 if [ "$status" -ne 0 ]; then
83 exit $status
86 let i=i+1
87 done
89 exit 0