Messages in this thread |  | | | Date | Sat, 2 Feb 2008 02:00:25 -0500 (EST) | | From | Steven Rostedt <> | | Subject | Re: [PATCH 21/23 -v8] Add markers to various events | |
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
|  |