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