Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
watchdog: Don't throttle the watchdog
tracing: Fix timer tracing

+9 -2
+6 -2
include/trace/events/timer.h
··· 81 81 TP_STRUCT__entry( 82 82 __field( void *, timer ) 83 83 __field( unsigned long, now ) 84 + __field( void *, function) 84 85 ), 85 86 86 87 TP_fast_assign( 87 88 __entry->timer = timer; 88 89 __entry->now = jiffies; 90 + __entry->function = timer->function; 89 91 ), 90 92 91 - TP_printk("timer=%p now=%lu", __entry->timer, __entry->now) 93 + TP_printk("timer=%p function=%pf now=%lu", __entry->timer, __entry->function,__entry->now) 92 94 ); 93 95 94 96 /** ··· 202 200 TP_STRUCT__entry( 203 201 __field( void *, hrtimer ) 204 202 __field( s64, now ) 203 + __field( void *, function) 205 204 ), 206 205 207 206 TP_fast_assign( 208 207 __entry->hrtimer = hrtimer; 209 208 __entry->now = now->tv64; 209 + __entry->function = hrtimer->function; 210 210 ), 211 211 212 - TP_printk("hrtimer=%p now=%llu", __entry->hrtimer, 212 + TP_printk("hrtimer=%p function=%pf now=%llu", __entry->hrtimer, __entry->function, 213 213 (unsigned long long)ktime_to_ns((ktime_t) { .tv64 = __entry->now })) 214 214 ); 215 215
+3
kernel/watchdog.c
··· 206 206 struct perf_sample_data *data, 207 207 struct pt_regs *regs) 208 208 { 209 + /* Ensure the watchdog never gets throttled */ 210 + event->hw.interrupts = 0; 211 + 209 212 if (__get_cpu_var(watchdog_nmi_touch) == true) { 210 213 __get_cpu_var(watchdog_nmi_touch) = false; 211 214 return;