Re: [RFC PATCH v2 0/5] Additional scheduling information in tracepoints

From: Peter Zijlstra
Date: Mon Sep 26 2016 - 08:27:24 EST


On Fri, Sep 23, 2016 at 12:49:30PM -0400, Julien Desfossez wrote:
> With this macro, we propose new versions of the sched_switch, sched_waking,
> sched_process_fork and sched_pi_setprio tracepoint probes that contain more
> scheduling information and get rid of the "prio" field. We also add the PI
> information to these tracepoints, so if a process is currently boosted, we show
> the name and PID of the top waiter. This allows to quickly see the blocking
> chain even if some of the trace background is missing.

Urgh.. bigger mess than ever :-(

So I thought the initial idea was to provide a 'blocked-on' tracepoint,
along with with the 'prio-changed' tracepoint, so you can reconstruct
the entire PI chain.

The only problem with that was initial state; when you start tracing (or
miss the start of a trace) its hard (impossible) to know what the
current state is.

But now you send a patch-set that just adds a metric ton of tracepoints.

This doesn't fix the current mess, it makes it worse :-(