Re: [PATCH 21/23 -v8] Add markers to various events

Steven Rostedt
2008-02-02T07:00:49Z

5B

On Thu, 31 Jan 2008, Mathieu Desnoyers wrote:

> * Steven Rostedt (rostedt@goodmis.org) wrote:
> > This patch adds markers to various events in the kernel.
> > (interrupts, task activation and hrtimers)
> >
>
> Hi Steven,
>
> I would propose the following standard for IRQ handler markers:
>
> trace_mark(kernel_irq_entry, "irq_id %u kernel_mode %u", irq,
> (regs)?(!user_mode(regs)):(1));

Are you saying that two markers with the same name is ok?
That would be great if that is true.

> ....
> trace_mark(kernel_irq_exit, MARK_NOARGS);

My patches don't use this (yet) so I'm leaving out adding markers
that are not used. I'm not disagreeing with adding these, it's just that
a patch series should only add markers that are actually used.

>
> So we can know the elaspsed time in irq handlers and whether they are
> nested on user of kernel code.
>
> The same for traps :
>
> trace_mark(kernel_arch_trap_entry, "trap_id %d ip #p%ld", trapnr,
> instruction_pointer(regs));
>
> Where we know the trap number and the instruction pointer that caused
> the trap. Here again, we should put a :
>
> trace_mark(kernel_arch_trap_exit, MARK_NOARGS);
>
> At the end of the trap handlers.
>
> It makes automatic analysis _much_ easier than trying to gather each and
> every handler instrumentation which would have a different name...
>

-- Steve