diff options
Diffstat (limited to 'include/trace/ftrace.h')
-rw-r--r-- | include/trace/ftrace.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/trace/ftrace.h b/include/trace/ftrace.h index 139b5067345b..27609dfcce25 100644 --- a/include/trace/ftrace.h +++ b/include/trace/ftrace.h | |||
@@ -763,7 +763,7 @@ perf_trace_##call(void *__data, proto) \ | |||
763 | struct ftrace_event_call *event_call = __data; \ | 763 | struct ftrace_event_call *event_call = __data; \ |
764 | struct ftrace_data_offsets_##call __maybe_unused __data_offsets;\ | 764 | struct ftrace_data_offsets_##call __maybe_unused __data_offsets;\ |
765 | struct ftrace_raw_##call *entry; \ | 765 | struct ftrace_raw_##call *entry; \ |
766 | struct pt_regs __regs; \ | 766 | struct pt_regs *__regs; \ |
767 | u64 __addr = 0, __count = 1; \ | 767 | u64 __addr = 0, __count = 1; \ |
768 | struct task_struct *__task = NULL; \ | 768 | struct task_struct *__task = NULL; \ |
769 | struct hlist_head *head; \ | 769 | struct hlist_head *head; \ |
@@ -782,18 +782,19 @@ perf_trace_##call(void *__data, proto) \ | |||
782 | sizeof(u64)); \ | 782 | sizeof(u64)); \ |
783 | __entry_size -= sizeof(u32); \ | 783 | __entry_size -= sizeof(u32); \ |
784 | \ | 784 | \ |
785 | perf_fetch_caller_regs(&__regs); \ | ||
786 | entry = perf_trace_buf_prepare(__entry_size, \ | 785 | entry = perf_trace_buf_prepare(__entry_size, \ |
787 | event_call->event.type, &__regs, &rctx); \ | 786 | event_call->event.type, &__regs, &rctx); \ |
788 | if (!entry) \ | 787 | if (!entry) \ |
789 | return; \ | 788 | return; \ |
790 | \ | 789 | \ |
790 | perf_fetch_caller_regs(__regs); \ | ||
791 | \ | ||
791 | tstruct \ | 792 | tstruct \ |
792 | \ | 793 | \ |
793 | { assign; } \ | 794 | { assign; } \ |
794 | \ | 795 | \ |
795 | perf_trace_buf_submit(entry, __entry_size, rctx, __addr, \ | 796 | perf_trace_buf_submit(entry, __entry_size, rctx, __addr, \ |
796 | __count, &__regs, head, __task); \ | 797 | __count, __regs, head, __task); \ |
797 | } | 798 | } |
798 | 799 | ||
799 | /* | 800 | /* |