Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * VFIO PCI mmap/mmap_fault tracepoints
0004  *
0005  * Copyright (C) 2018 IBM Corp.  All rights reserved.
0006  *     Author: Alexey Kardashevskiy <aik@ozlabs.ru>
0007  */
0008 
0009 #undef TRACE_SYSTEM
0010 #define TRACE_SYSTEM vfio_pci
0011 
0012 #if !defined(_TRACE_VFIO_PCI_H) || defined(TRACE_HEADER_MULTI_READ)
0013 #define _TRACE_VFIO_PCI_H
0014 
0015 #include <linux/tracepoint.h>
0016 
0017 TRACE_EVENT(vfio_pci_nvgpu_mmap_fault,
0018     TP_PROTO(struct pci_dev *pdev, unsigned long hpa, unsigned long ua,
0019             vm_fault_t ret),
0020     TP_ARGS(pdev, hpa, ua, ret),
0021 
0022     TP_STRUCT__entry(
0023         __field(const char *, name)
0024         __field(unsigned long, hpa)
0025         __field(unsigned long, ua)
0026         __field(int, ret)
0027     ),
0028 
0029     TP_fast_assign(
0030         __entry->name = dev_name(&pdev->dev),
0031         __entry->hpa = hpa;
0032         __entry->ua = ua;
0033         __entry->ret = ret;
0034     ),
0035 
0036     TP_printk("%s: %lx -> %lx ret=%d", __entry->name, __entry->hpa,
0037             __entry->ua, __entry->ret)
0038 );
0039 
0040 TRACE_EVENT(vfio_pci_nvgpu_mmap,
0041     TP_PROTO(struct pci_dev *pdev, unsigned long hpa, unsigned long ua,
0042             unsigned long size, int ret),
0043     TP_ARGS(pdev, hpa, ua, size, ret),
0044 
0045     TP_STRUCT__entry(
0046         __field(const char *, name)
0047         __field(unsigned long, hpa)
0048         __field(unsigned long, ua)
0049         __field(unsigned long, size)
0050         __field(int, ret)
0051     ),
0052 
0053     TP_fast_assign(
0054         __entry->name = dev_name(&pdev->dev),
0055         __entry->hpa = hpa;
0056         __entry->ua = ua;
0057         __entry->size = size;
0058         __entry->ret = ret;
0059     ),
0060 
0061     TP_printk("%s: %lx -> %lx size=%lx ret=%d", __entry->name, __entry->hpa,
0062             __entry->ua, __entry->size, __entry->ret)
0063 );
0064 
0065 TRACE_EVENT(vfio_pci_npu2_mmap,
0066     TP_PROTO(struct pci_dev *pdev, unsigned long hpa, unsigned long ua,
0067             unsigned long size, int ret),
0068     TP_ARGS(pdev, hpa, ua, size, ret),
0069 
0070     TP_STRUCT__entry(
0071         __field(const char *, name)
0072         __field(unsigned long, hpa)
0073         __field(unsigned long, ua)
0074         __field(unsigned long, size)
0075         __field(int, ret)
0076     ),
0077 
0078     TP_fast_assign(
0079         __entry->name = dev_name(&pdev->dev),
0080         __entry->hpa = hpa;
0081         __entry->ua = ua;
0082         __entry->size = size;
0083         __entry->ret = ret;
0084     ),
0085 
0086     TP_printk("%s: %lx -> %lx size=%lx ret=%d", __entry->name, __entry->hpa,
0087             __entry->ua, __entry->size, __entry->ret)
0088 );
0089 
0090 #endif /* _TRACE_VFIO_PCI_H */
0091 
0092 #undef TRACE_INCLUDE_PATH
0093 #define TRACE_INCLUDE_PATH ../../drivers/vfio/pci
0094 #undef TRACE_INCLUDE_FILE
0095 #define TRACE_INCLUDE_FILE trace
0096 
0097 /* This part must be outside protection */
0098 #include <trace/define_trace.h>