• Linus Torvalds's avatar
    Merge tag 'trace-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 965a9d75
    Linus Torvalds authored
    Pull tracing updates from Steven Rostedt:
    
     - Runtime verification infrastructure
    
       This is the biggest change here. It introduces the runtime
       verification that is necessary for running Linux on safety critical
       systems.
    
       It allows for deterministic automata models to be inserted into the
       kernel that will attach to tracepoints, where the information on
       these tracepoints will move the model from state to state.
    
       If a state is encountered that does not belong to the model, it will
       then activate a given reactor, that could just inform the user or
       even panic the kernel (for which safety critical systems will detect
       and can recover from).
    
     - Two monitor models are also added: Wakeup In Preemptive (WIP - not to
       be confused with "work in progress"), and Wakeup While Not Running
       (WWNR).
    
     - Added __vstring() helper to the TRACE_EVENT() macro to replace
       several vsnprintf() usages that were all doing it wrong.
    
     - eprobes now can have their event autogenerated when the event name is
       left off.
    
     - The rest is various cleanups and fixes.
    
    * tag 'trace-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (50 commits)
      rv: Unlock on error path in rv_unregister_reactor()
      tracing: Use alignof__(struct {type b;}) instead of offsetof()
      tracing/eprobe: Show syntax error logs in error_log file
      scripts/tracing: Fix typo 'the the' in comment
      tracepoints: It is CONFIG_TRACEPOINTS not CONFIG_TRACEPOINT
      tracing: Use free_trace_buffer() in allocate_trace_buffers()
      tracing: Use a struct alignof to determine trace event field alignment
      rv/reactor: Add the panic reactor
      rv/reactor: Add the printk reactor
      rv/monitor: Add the wwnr monitor
      rv/monitor: Add the wip monitor
      rv/monitor: Add the wip monitor skeleton created by dot2k
      Documentation/rv: Add deterministic automata instrumentation documentation
      Documentation/rv: Add deterministic automata monitor synthesis documentation
      tools/rv: Add dot2k
      Documentation/rv: Add deterministic automaton documentation
      tools/rv: Add dot2c
      Documentation/rv: Add a basic documentation
      rv/include: Add instrumentation helper functions
      rv/include: Add deterministic automata monitor definition via C macros
      ...
    965a9d75
ftrace.c 17.4 KB