• Steven Rostedt (VMware)'s avatar
    ftrace/x86: Do no run CPU sync when there is only one CPU online · 2b87965a
    Steven Rostedt (VMware) authored
    Moving enabling of function tracing to early boot, even before scheduling is
    enabled, means that it is not safe to enable interrupts. When function
    tracing was enabled at boot up, it use to happen after scheduling and the
    other CPUs were brought up. That required running a sync across all CPUs
    when modifying the function hook locations in the code. To do the
    synchronization, interrupts had to be enabled. Now function tracing can be
    started before the other CPUs are brought up, and enabling interrupts in
    that case is dangerous. As only tho boot CPU is active, there is no reason
    to run the synchronization. If the online CPU count is one, do not bother
    doing the synchronization. This removes the need to enable interrupts.
    
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
    2b87965a
ftrace.c 24.2 KB