Comment 17 for bug 1648280

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Here's my dtrace script:

HALC_IO*:::IOProc_Begin
/execname == "mixxx"/
{
  self->callback_tid = tid;
  self->callback_enter_ts = timestamp;
  self->callback_enter_vts = vtimestamp;
}

HALC_IO*:::IOProc_End
/execname == "mixxx" && self->callback_enter_ts/
{
  @[ustack(), "callback duration ns"] = quantize(timestamp - self->callback_enter_ts);
  @[ustack(), "callback on-cpu duration ns"] = quantize(vtimestamp - self->callback_enter_vts);
  self->callback_enter_ts = 0;
  self->callback_enter_vts = 0;
}

syscall:::entry
/execname == "mixxx" && tid == self->callback_tid/
{
  self->syscall_ts = timestamp;
}

syscall:::return
/execname == "mixxx" && tid == self->callback_tid && self->syscall_ts/
{
  @[ustack(), "syscall duration ns"] = quantize(timestamp - self->syscall_ts);
  self->syscall_ts = 0;
}