> -----Original Message-----
> From: Andi Kleen [mailto:a...@firstfloor.org]
> Sent: Wednesday, 24 September, 2014 4:50 PM
> To: Elliott, Robert (Server Storage)
> Cc: Steven Rostedt; linux-kernel@vger.kernel.org; Jens Axboe
> <ax...@kernel.dk> (ax...@kernel.dk); Christoph Hellwig
> Subject: Re: ftrace function-graph and interprocessor interrupts
> 
> "Elliott, Robert (Server Storage)" <elli...@hp.com> writes:
> 
> > The function-graph tracer marks some interrupt handler functions
> > with ==========>  and <========== labels.
> 
> I'm not sure the marking is really that useful. Isn't it always obvious
> from the function names where an interrupt starts/end?
> 
> -Andi

Although the do_IRQ name stands out pretty well, some of the
others don't, and blk-mq calling them directly makes it hard
to tell.  They show up clearly in the function trace, just
not the function_graph trace.

Also, the IPI function can end up nested inside { } but 
without indents, depending on when it occurs.

 10)               |                                    
sd_setup_read_write_cmnd [sd_mod]() {
 10)               |                                    
smp_call_function_single_interrupt() {
 10)               |                                      irq_enter() {
...
 10) + 36.788 us   |                                    } /* 
smp_call_function_single_interrupt */
 10)               |                                      scsi_init_io() {

The ==> labels also add an indent level.

I'd like to add an option to exclude the time taken by interrupts
in the cumulative times, but that first requires that function_graph
understand what times to exclude.

--
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