diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-03-24 10:52:25 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-03-24 10:52:25 -0700 | 
| commit | e46b4e2b46e173889b19999b8bd033d5e8b3acf0 (patch) | |
| tree | 43f4770868d372c76ce5f084cc8e23d2942e07d5 /kernel/trace/trace_output.c | |
| parent | faea72dd0f155a9d349e191d74830716c702651d (diff) | |
| parent | 7e6867bf831c71fe0e47438831ae3a94d4c7ab3c (diff) | |
Merge tag 'trace-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
Pull tracing updates from Steven Rostedt:
 "Nothing major this round.  Mostly small clean ups and fixes.
  Some visible changes:
   - A new flag was added to distinguish traces done in NMI context.
   - Preempt tracer now shows functions where preemption is disabled but
     interrupts are still enabled.
  Other notes:
   - Updates were done to function tracing to allow better performance
     with perf.
   - Infrastructure code has been added to allow for a new histogram
     feature for recording live trace event histograms that can be
     configured by simple user commands.  The feature itself was just
     finished, but needs a round in linux-next before being pulled.
     This only includes some infrastructure changes that will be needed"
* tag 'trace-v4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (22 commits)
  tracing: Record and show NMI state
  tracing: Fix trace_printk() to print when not using bprintk()
  tracing: Remove redundant reset per-CPU buff in irqsoff tracer
  x86: ftrace: Fix the misleading comment for arch/x86/kernel/ftrace.c
  tracing: Fix crash from reading trace_pipe with sendfile
  tracing: Have preempt(irqs)off trace preempt disabled functions
  tracing: Fix return while holding a lock in register_tracer()
  ftrace: Use kasprintf() in ftrace_profile_tracefs()
  ftrace: Update dynamic ftrace calls only if necessary
  ftrace: Make ftrace_hash_rec_enable return update bool
  tracing: Fix typoes in code comment and printk in trace_nop.c
  tracing, writeback: Replace cgroup path to cgroup ino
  tracing: Use flags instead of bool in trigger structure
  tracing: Add an unreg_all() callback to trigger commands
  tracing: Add needs_rec flag to event triggers
  tracing: Add a per-event-trigger 'paused' field
  tracing: Add get_syscall_name()
  tracing: Add event record param to trigger_ops.func()
  tracing: Make event trigger functions available
  tracing: Make ftrace_event_field checking functions available
  ...
Diffstat (limited to 'kernel/trace/trace_output.c')
| -rw-r--r-- | kernel/trace/trace_output.c | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c index 282982195e09..0bb9cf2d53e6 100644 --- a/kernel/trace/trace_output.c +++ b/kernel/trace/trace_output.c @@ -389,7 +389,9 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)  	char irqs_off;  	int hardirq;  	int softirq; +	int nmi; +	nmi = entry->flags & TRACE_FLAG_NMI;  	hardirq = entry->flags & TRACE_FLAG_HARDIRQ;  	softirq = entry->flags & TRACE_FLAG_SOFTIRQ; @@ -415,10 +417,12 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)  	}  	hardsoft_irq = +		(nmi && hardirq)     ? 'Z' : +		nmi                  ? 'z' :  		(hardirq && softirq) ? 'H' : -		hardirq ? 'h' : -		softirq ? 's' : -		'.'; +		hardirq              ? 'h' : +		softirq              ? 's' : +		                       '.' ;  	trace_seq_printf(s, "%c%c%c",  			 irqs_off, need_resched, hardsoft_irq);  | 
