1 #!/usr/bin/ksh 2 # 3 # CDDL HEADER START 4 # 5 # The contents of this file are subject to the terms of the 6 # Common Development and Distribution License (the "License"). 7 # You may not use this file except in compliance with the License. 8 # 9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 # or http://www.opensolaris.org/os/licensing. 11 # See the License for the specific language governing permissions 12 # and limitations under the License. 13 # 14 # When distributing Covered Code, include this CDDL HEADER in each 15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 # If applicable, add the following below this CDDL HEADER, with the 17 # fields enclosed by brackets "[]" replaced with your own identifying 18 # information: Portions Copyright [yyyy] [name of copyright owner] 19 # 20 # CDDL HEADER END 21 # 22 23 # 24 # Copyright 2007 Sun Microsystems, Inc. All rights reserved. 25 # Use is subject to license terms. 26 # 27 # ident "%Z%%M% %I% %E% SMI" 28 # 29 30 if [ $# != 1 ]; then 31 echo expected one argument: '<'dtrace-path'>' 32 exit 2 33 fi 34 35 dtrace=$1 36 37 # 38 # Test that we don't deadlock between forking and enabling/disabling USDT 39 # probes. This test has succeeded if it completes at all. 40 # 41 42 ./tst.forker.exe & 43 id=$! 44 45 while kill -0 $id >/dev/null 2>&1; do 46 $dtrace -p $id -s /dev/stdin <<-EOF 47 forker*:::fire 48 /i++ == 4/ 49 { 50 exit(0); 51 } 52 EOF 53 done 54 55 exit 0 56