[DTrace-devel] [PATCH 3/4] test: Convert tick-* probes to write:entry probes for trunc() test

Kris Van Hees kris.van.hees at oracle.com
Thu Dec 21 03:44:06 UTC 2023


On Thu, Sep 07, 2023 at 06:39:23PM -0400, eugene.loh at oracle.com wrote:
> 
> In commit 07a56e29b6c1
> "test: Convert tick-* probes to write:entry probes for clear() tests",
> clear() tests were cleaned up because they rely on tricky interactions
> between the producer and consumer.  Make the same change here for a
> trunc() test that has been seen to be similarly vulnerable.
> 
> Signed-off-by: Eugene Loh <eugene.loh at oracle.com>

Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>

> ---
>  test/unittest/aggs/tst.trunc0.d | 32 ++++++++++++++++++--------------
>  1 file changed, 18 insertions(+), 14 deletions(-)
> 
> diff --git a/test/unittest/aggs/tst.trunc0.d b/test/unittest/aggs/tst.trunc0.d
> index fb5adbef..7686d019 100644
> --- a/test/unittest/aggs/tst.trunc0.d
> +++ b/test/unittest/aggs/tst.trunc0.d
> @@ -1,32 +1,36 @@
>  /*
>   * Oracle Linux DTrace.
> - * Copyright (c) 2006, 2020, Oracle and/or its affiliates. All rights reserved.
> + * Copyright (c) 2006, 2023, Oracle and/or its affiliates. All rights reserved.
>   * Licensed under the Universal Permissive License v 1.0 as shown at
>   * http://oss.oracle.com/licenses/upl.
>   */
> +/* @@trigger: periodic_output */
> +/* @@nosort */
>  
>  #pragma D option quiet
>  #pragma D option aggrate=1ms
>  #pragma D option switchrate=50ms
>  
> -int i;
> -
> -tick-100ms
> -/i < 10/
> -{
> -	@[i] = sum(10 - i);
> -	i++;
> -}
> -
> -tick-100ms
> -/i == 5/
> +BEGIN
>  {
> +	n = 0;
> +	i = 0; @[i] = sum(10 - i);
> +	i = 1; @[i] = sum(10 - i);
> +	i = 2; @[i] = sum(10 - i);
> +	i = 3; @[i] = sum(10 - i);
> +	i = 4; @[i] = sum(10 - i);
>  	trunc(@);
>  }
>  
> -tick-100ms
> -/i == 10/
> +/* Wait for the trunc() to be performed by the consumer. */
> +syscall::write:entry
> +/pid == $target && n++ == 2/
>  {
> +	i = 5; @[i] = sum(10 - i);
> +	i = 6; @[i] = sum(10 - i);
> +	i = 7; @[i] = sum(10 - i);
> +	i = 8; @[i] = sum(10 - i);
> +	i = 9; @[i] = sum(10 - i);
>  	exit(0);
>  }
>  
> -- 
> 2.18.4
> 
> 



More information about the DTrace-devel mailing list