xref: /linux/arch/s390/include/asm/trace/diag.h (revision e58e871becec2d3b04ed91c0c16fe8deac9c9dfa)
1 /*
2  * Tracepoint header for s390 diagnose calls
3  *
4  * Copyright IBM Corp. 2015
5  * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
6  */
7 
8 #undef TRACE_SYSTEM
9 #define TRACE_SYSTEM s390
10 
11 #if !defined(_TRACE_S390_DIAG_H) || defined(TRACE_HEADER_MULTI_READ)
12 #define _TRACE_S390_DIAG_H
13 
14 #include <linux/tracepoint.h>
15 
16 #undef TRACE_INCLUDE_PATH
17 #undef TRACE_INCLUDE_FILE
18 
19 #define TRACE_INCLUDE_PATH asm/trace
20 #define TRACE_INCLUDE_FILE diag
21 
22 TRACE_EVENT(s390_diagnose,
23 	TP_PROTO(unsigned short nr),
24 	TP_ARGS(nr),
25 	TP_STRUCT__entry(
26 		__field(unsigned short, nr)
27 	),
28 	TP_fast_assign(
29 		__entry->nr = nr;
30 	),
31 	TP_printk("nr=0x%x", __entry->nr)
32 );
33 
34 #ifdef CONFIG_TRACEPOINTS
35 void trace_s390_diagnose_norecursion(int diag_nr);
36 #else
37 static inline void trace_s390_diagnose_norecursion(int diag_nr) { }
38 #endif
39 
40 #endif /* _TRACE_S390_DIAG_H */
41 
42 /* This part must be outside protection */
43 #include <trace/define_trace.h>
44