Merge tag 'nds32-for-linus-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / drivers / s390 / cio / vfio_ccw_trace.h
1 /* SPDX-License-Identifier: GPL-2.0
2  * Tracepoints for vfio_ccw driver
3  *
4  * Copyright IBM Corp. 2018
5  *
6  * Author(s): Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
7  *            Halil Pasic <pasic@linux.vnet.ibm.com>
8  */
9
10 #undef TRACE_SYSTEM
11 #define TRACE_SYSTEM vfio_ccw
12
13 #if !defined(_VFIO_CCW_TRACE_) || defined(TRACE_HEADER_MULTI_READ)
14 #define _VFIO_CCW_TRACE_
15
16 #include <linux/tracepoint.h>
17
18 TRACE_EVENT(vfio_ccw_io_fctl,
19         TP_PROTO(int fctl, struct subchannel_id schid, int errno, char *errstr),
20         TP_ARGS(fctl, schid, errno, errstr),
21
22         TP_STRUCT__entry(
23                 __field(int, fctl)
24                 __field_struct(struct subchannel_id, schid)
25                 __field(int, errno)
26                 __field(char*, errstr)
27         ),
28
29         TP_fast_assign(
30                 __entry->fctl = fctl;
31                 __entry->schid = schid;
32                 __entry->errno = errno;
33                 __entry->errstr = errstr;
34         ),
35
36         TP_printk("schid=%x.%x.%04x fctl=%x errno=%d info=%s",
37                   __entry->schid.cssid,
38                   __entry->schid.ssid,
39                   __entry->schid.sch_no,
40                   __entry->fctl,
41                   __entry->errno,
42                   __entry->errstr)
43 );
44
45 #endif /* _VFIO_CCW_TRACE_ */
46
47 /* This part must be outside protection */
48
49 #undef TRACE_INCLUDE_PATH
50 #define TRACE_INCLUDE_PATH .
51 #undef TRACE_INCLUDE_FILE
52 #define TRACE_INCLUDE_FILE vfio_ccw_trace
53
54 #include <trace/define_trace.h>