On Mon, Jul 6, 2015 at 5:15 PM, Steven Rostedt <rost...@goodmis.org> wrote:
> On Mon,  6 Jul 2015 12:15:45 -0700
> Cong Wang <xiyou.wangc...@gmail.com> wrote:
>
>> Currently we only have one sched_switch trace event
>> for task switching, which is generated very early during
>> task switch. When we try to monitor per-container perf
>> events, this is not what we expect.
>>
>> For example, we have a process A which is in the cgroup
>> we monitor, and process B which isn't, when kernel switches
>> from B to A, the sched_switch event is not recorded for this
>> cgroup since it belongs to B (current process is still B
>> util we finish the switch), but we require this event to
>> signal that process A in this cgroup gets scheduled. This is
>> crucial for calculating schedule latency (like `perf sched`).
>
> I just want to understand this correctly. Does perf sched only listen
> to events that are executed by the task in a particular cgroup? There's
> no way to say "check sched_switch field next"?
>

perf_event cgroup needs to be specified in cmdline and `perf sched`
doesn't support that currently, I wrote my own tool to do this.
(I have some patch to add it to `perf sched`)

As I replied in the previous thread, we can certainly check if a process
belongs to a cgroup by tracking the PID's, but that is not easy.

>
> This looks identical to trace_sched_switch. Please convert both to a
> DECLARE_EVENT_CLASS() and DEFINE_EVENT()s.
>

Not identical, I rename 'next' to 'curr' since switch is done 'next'
becomes meaningless.

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to