Re: [PATCH 1/2] tracing/function-graph-tracer: signal interruptsentry/exit points on outpout

From: Ingo Molnar
Date: Mon Dec 08 2008 - 07:22:42 EST



* Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:

> +/* Used during output to find the interrupts entry/exit points */
> +const char *ftrace_graph_irq_entries[] = {
> + "smp_call_function_single_interrupt",
> + "xen_call_function_single_interrupt",
> + "wrapper_smp_local_timer_interrupt",
> + "smp_irq_move_cleanup_interrupt",
> + "smp_call_function_interrupt",
> + "xen_call_function_interrupt",
> + "smp_apic_timer_interrupt",
> + "uv_bau_message_interrupt",
> + "mce_threshold_interrupt",
> + "smp_spurious_interrupt",
> + "smp_thermal_interrupt",
> + "smp_error_interrupt",
> + "do_IRQ",
> + NULL

hm, couldnt we move these symbols to a separate section, and then only
check for [section.start ... section.end] instead of this ugly and slow
array?

Missing a few annotations initially is no big deal - we wont have
pretty-print. do_IRQ() and smp_apic_timer_interrupt is what matters most
in practice. "__irqentry" section annotation or so, which puts them into
.text.irqentry or so - and then irqentry_start/end are extracted via
appropriate glue in the arch/x86/kernel/vmlinux* linker script.

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