Project

General

Profile

Actions

Bug #7297

closed

clear() on llquantize aggregation causes dtrace to exit

Added by Robert Mustacchi almost 5 years ago. Updated almost 5 years ago.

Status:
Closed
Priority:
Normal
Category:
DTrace
Start date:
2016-08-13
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

Reported by stevenwilliamson via github:

    The below DTrace script reproduces the problem.

    Calling clear() on a populated aggregation created with llquantize causes dtrace to abort with the error message:

    trace: processing aborted: No such file or directory

    Example script to trigger the issue:

    #!/usr/sbin/dtrace -s

    syscall::read*:entry /fds[arg0].fi_fs == "zfs"/
    {
        self->start = timestamp;
    }

    syscall::read*:return / self->start /
    {
        @data["latency_aggregation"] = llquantize(timestamp - self->start, 10, 0, 6, 20);
        self->start = 0;
    }

    tick-1s
    {
      printa(@data);
      clear(@data);
    }

The issue is that llquantize() isn't being properly special-cased in the DTRACE_AGGWALK_CLEAR case and the aggregation parameters are erroneously being cleared.


Related issues

Related to illumos gate - Bug #7298: printa() of multiple aggregations can fail for llquantize()ClosedBryan Cantrill2016-08-13

Actions
Actions #1

Updated by Robert Mustacchi almost 5 years ago

  • Related to Bug #7298: printa() of multiple aggregations can fail for llquantize() added
Actions #2

Updated by Electric Monk almost 5 years ago

  • Status changed from New to Closed

git commit 0ddc0ebb74cedb0ac394818c6e166c47eb8e62e5

commit  0ddc0ebb74cedb0ac394818c6e166c47eb8e62e5
Author: Bryan Cantrill <bryan@joyent.com>
Date:   2016-08-25T23:32:27.000Z

    7297 clear() on llquantize aggregation causes dtrace to exit
    7298 printa() of multiple aggregations can fail for llquantize()
    Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
    Reviewed by: Robert Mustacchi <rm@joyent.com>
    Reviewed by: Dan McDonald <danmcd@omniti.com>
    Reviewed by: Adam Leventhal <adam.leventhal@gmail.com>
    Approved by: Richard Lowe <richlowe@richlowe.net>

Actions

Also available in: Atom PDF