• Vasily Averin's avatar
    trigger_next should increase position index · 6722b23e
    Vasily Averin authored
    if seq_file .next fuction does not change position index,
    read after some lseek can generate unexpected output.
    
    Without patch:
     # dd bs=30 skip=1 if=/sys/kernel/tracing/events/sched/sched_switch/trigger
     dd: /sys/kernel/tracing/events/sched/sched_switch/trigger: cannot skip to specified offset
     n traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
     # Available triggers:
     # traceon traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
     6+1 records in
     6+1 records out
     206 bytes copied, 0.00027916 s, 738 kB/s
    
    Notice the printing of "# Available triggers:..." after the line.
    
    With the patch:
     # dd bs=30 skip=1 if=/sys/kernel/tracing/events/sched/sched_switch/trigger
     dd: /sys/kernel/tracing/events/sched/sched_switch/trigger: cannot skip to specified offset
     n traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
     2+1 records in
     2+1 records out
     88 bytes copied, 0.000526867 s, 167 kB/s
    
    It only prints the end of the file, and does not restart.
    
    Link: http://lkml.kernel.org/r/3c35ee24-dd3a-8119-9c19-552ed253388a@virtuozzo.com
    
    https://bugzilla.kernel.org/show_bug.cgi?id=206283Signed-off-by: default avatarVasily Averin <vvs@virtuozzo.com>
    Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
    6722b23e
trace_events_trigger.c 40.8 KB