1 #undef TRACE_SYSTEM 2 #define TRACE_SYSTEM hyperv 3 4 #if !defined(_TRACE_HYPERV_H) || defined(TRACE_HEADER_MULTI_READ) 5 #define _TRACE_HYPERV_H 6 7 #include <linux/tracepoint.h> 8 9 #if IS_ENABLED(CONFIG_HYPERV) 10 11 TRACE_EVENT(hyperv_mmu_flush_tlb_others, 12 TP_PROTO(const struct cpumask *cpus, 13 const struct flush_tlb_info *info), 14 TP_ARGS(cpus, info), 15 TP_STRUCT__entry( 16 __field(unsigned int, ncpus) 17 __field(struct mm_struct *, mm) 18 __field(unsigned long, addr) 19 __field(unsigned long, end) 20 ), 21 TP_fast_assign(__entry->ncpus = cpumask_weight(cpus); 22 __entry->mm = info->mm; 23 __entry->addr = info->start; 24 __entry->end = info->end; 25 ), 26 TP_printk("ncpus %d mm %p addr %lx, end %lx", 27 __entry->ncpus, __entry->mm, 28 __entry->addr, __entry->end) 29 ); 30 31 #endif /* CONFIG_HYPERV */ 32 33 #undef TRACE_INCLUDE_PATH 34 #define TRACE_INCLUDE_PATH asm/trace/ 35 #undef TRACE_INCLUDE_FILE 36 #define TRACE_INCLUDE_FILE hyperv 37 #endif /* _TRACE_HYPERV_H */ 38 39 /* This part must be outside protection */ 40 #include <trace/define_trace.h> 41