19512fe85Sahl /* 29512fe85Sahl * CDDL HEADER START 39512fe85Sahl * 49512fe85Sahl * The contents of this file are subject to the terms of the 59512fe85Sahl * Common Development and Distribution License (the "License"). 69512fe85Sahl * You may not use this file except in compliance with the License. 79512fe85Sahl * 89512fe85Sahl * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 99512fe85Sahl * or http://www.opensolaris.org/os/licensing. 109512fe85Sahl * See the License for the specific language governing permissions 119512fe85Sahl * and limitations under the License. 129512fe85Sahl * 139512fe85Sahl * When distributing Covered Code, include this CDDL HEADER in each 149512fe85Sahl * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 159512fe85Sahl * If applicable, add the following below this CDDL HEADER, with the 169512fe85Sahl * fields enclosed by brackets "[]" replaced with your own identifying 179512fe85Sahl * information: Portions Copyright [yyyy] [name of copyright owner] 189512fe85Sahl * 199512fe85Sahl * CDDL HEADER END 209512fe85Sahl */ 219512fe85Sahl 229512fe85Sahl /* 23*73427c57Sahl * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 249512fe85Sahl * Use is subject to license terms. 259512fe85Sahl */ 269512fe85Sahl 279512fe85Sahl /* 289512fe85Sahl * ASSERTION: 299512fe85Sahl * Positive avg() test 309512fe85Sahl * 319512fe85Sahl * SECTION: Aggregations/Aggregations 329512fe85Sahl * 339512fe85Sahl * NOTES: 349512fe85Sahl * Verifies that printing a clear()'d aggregation with an avg() 359512fe85Sahl * aggregation function of 0 doesn't cause divide-by-zero problems. 369512fe85Sahl * 379512fe85Sahl */ 389512fe85Sahl 399512fe85Sahl #pragma D option quiet 409512fe85Sahl #pragma D option switchrate=50ms 419512fe85Sahl #pragma D option aggrate=1ms 429512fe85Sahl 439512fe85Sahl tick-100ms 449512fe85Sahl /(x++ % 5) == 0/ 459512fe85Sahl { 469512fe85Sahl @time = avg(0); 479512fe85Sahl } 489512fe85Sahl 499512fe85Sahl tick-100ms 50*73427c57Sahl /x > 5 && x <= 20/ 519512fe85Sahl { 529512fe85Sahl printa(" %@d\n", @time); 539512fe85Sahl clear(@time); 549512fe85Sahl } 559512fe85Sahl 569512fe85Sahl tick-100ms 579512fe85Sahl /x > 20/ 589512fe85Sahl { 599512fe85Sahl exit(0); 609512fe85Sahl } 61