• Lai Jiangshan's avatar
    tracing: Reduce latency and remove percpu trace_seq · bc289ae9
    Lai Jiangshan authored
    __print_flags() and __print_symbolic() use percpu trace_seq:
    
    1) Its memory is allocated at compile time, it wastes memory if we don't use tracing.
    2) It is percpu data and it wastes more memory for multi-cpus system.
    3) It disables preemption when it executes its core routine
       "trace_seq_printf(s, "%s: ", #call);" and introduces latency.
    
    So we move this trace_seq to struct trace_iterator.
    Signed-off-by: default avatarLai Jiangshan <laijs@cn.fujitsu.com>
    LKML-Reference: <4C078350.7090106@cn.fujitsu.com>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    bc289ae9
ftrace.h 20.8 KB