tst.usym.ksh revision 302408
1198090Srdivacky# 2198090Srdivacky# CDDL HEADER START 3198090Srdivacky# 4198090Srdivacky# The contents of this file are subject to the terms of the 5198090Srdivacky# Common Development and Distribution License (the "License"). 6198090Srdivacky# You may not use this file except in compliance with the License. 7198090Srdivacky# 8198090Srdivacky# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9198090Srdivacky# or http://www.opensolaris.org/os/licensing. 10198090Srdivacky# See the License for the specific language governing permissions 11198090Srdivacky# and limitations under the License. 12198090Srdivacky# 13198090Srdivacky# When distributing Covered Code, include this CDDL HEADER in each 14198090Srdivacky# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15198090Srdivacky# If applicable, add the following below this CDDL HEADER, with the 16198892Srdivacky# fields enclosed by brackets "[]" replaced with your own identifying 17198090Srdivacky# information: Portions Copyright [yyyy] [name of copyright owner] 18198090Srdivacky# 19198090Srdivacky# CDDL HEADER END 20198090Srdivacky# 21198090Srdivacky 22202878Srdivacky# 23202878Srdivacky# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 24202878Srdivacky# Use is subject to license terms. 25198090Srdivacky# 26198090Srdivacky# ident "%Z%%M% %I% %E% SMI" 27198090Srdivacky 28203954Srdivackyscript() 29198090Srdivacky{ 30198090Srdivacky $dtrace -qs /dev/stdin <<EOF 31198090Srdivacky profile-1234hz 32198090Srdivacky /arg1 != 0/ 33198090Srdivacky { 34198090Srdivacky @[usym(arg1)] = count(); 35198090Srdivacky } 36198090Srdivacky 37198090Srdivacky tick-100ms 38198090Srdivacky /i++ == 20/ 39198090Srdivacky { 40198090Srdivacky exit(0); 41198090Srdivacky } 42198090SrdivackyEOF 43198090Srdivacky} 44198090Srdivacky 45198090Srdivackyspinny() 46198090Srdivacky{ 47198090Srdivacky while true; do 48198090Srdivacky let i=i+1 49198090Srdivacky done 50203954Srdivacky} 51198090Srdivacky 52203954Srdivackyif [ $# != 1 ]; then 53202878Srdivacky echo expected one argument: '<'dtrace-path'>' 54203954Srdivacky exit 2 55198090Srdivackyfi 56198090Srdivacky 57202878Srdivackydtrace=$1 58198090Srdivacky 59198090Srdivackyspinny & 60202878Srdivackychild=$! 61202878Srdivacky 62202878Srdivacky# 63198090Srdivacky# This test is essentially the same as that in the ufunc test; see that 64198090Srdivacky# test for the rationale. 65198090Srdivacky# 66198090Srdivackyscript | tee /dev/fd/2 | egrep 'ksh(93)?`[a-zA-Z_]' > /dev/null 67198090Srdivackystatus=$? 68198090Srdivacky 69198090Srdivackykill $child 70198090Srdivackyexit $status 71198090Srdivacky