1cf4c2f8cSDennis Dalessandro /* 2cf4c2f8cSDennis Dalessandro * Copyright(c) 2016 Intel Corporation. 3cf4c2f8cSDennis Dalessandro * 4cf4c2f8cSDennis Dalessandro * This file is provided under a dual BSD/GPLv2 license. When using or 5cf4c2f8cSDennis Dalessandro * redistributing this file, you may do so under either license. 6cf4c2f8cSDennis Dalessandro * 7cf4c2f8cSDennis Dalessandro * GPL LICENSE SUMMARY 8cf4c2f8cSDennis Dalessandro * 9cf4c2f8cSDennis Dalessandro * This program is free software; you can redistribute it and/or modify 10cf4c2f8cSDennis Dalessandro * it under the terms of version 2 of the GNU General Public License as 11cf4c2f8cSDennis Dalessandro * published by the Free Software Foundation. 12cf4c2f8cSDennis Dalessandro * 13cf4c2f8cSDennis Dalessandro * This program is distributed in the hope that it will be useful, but 14cf4c2f8cSDennis Dalessandro * WITHOUT ANY WARRANTY; without even the implied warranty of 15cf4c2f8cSDennis Dalessandro * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16cf4c2f8cSDennis Dalessandro * General Public License for more details. 17cf4c2f8cSDennis Dalessandro * 18cf4c2f8cSDennis Dalessandro * BSD LICENSE 19cf4c2f8cSDennis Dalessandro * 20cf4c2f8cSDennis Dalessandro * Redistribution and use in source and binary forms, with or without 21cf4c2f8cSDennis Dalessandro * modification, are permitted provided that the following conditions 22cf4c2f8cSDennis Dalessandro * are met: 23cf4c2f8cSDennis Dalessandro * 24cf4c2f8cSDennis Dalessandro * - Redistributions of source code must retain the above copyright 25cf4c2f8cSDennis Dalessandro * notice, this list of conditions and the following disclaimer. 26cf4c2f8cSDennis Dalessandro * - Redistributions in binary form must reproduce the above copyright 27cf4c2f8cSDennis Dalessandro * notice, this list of conditions and the following disclaimer in 28cf4c2f8cSDennis Dalessandro * the documentation and/or other materials provided with the 29cf4c2f8cSDennis Dalessandro * distribution. 30cf4c2f8cSDennis Dalessandro * - Neither the name of Intel Corporation nor the names of its 31cf4c2f8cSDennis Dalessandro * contributors may be used to endorse or promote products derived 32cf4c2f8cSDennis Dalessandro * from this software without specific prior written permission. 33cf4c2f8cSDennis Dalessandro * 34cf4c2f8cSDennis Dalessandro * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 35cf4c2f8cSDennis Dalessandro * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 36cf4c2f8cSDennis Dalessandro * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 37cf4c2f8cSDennis Dalessandro * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 38cf4c2f8cSDennis Dalessandro * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 39cf4c2f8cSDennis Dalessandro * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 40cf4c2f8cSDennis Dalessandro * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 41cf4c2f8cSDennis Dalessandro * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 42cf4c2f8cSDennis Dalessandro * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 43cf4c2f8cSDennis Dalessandro * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 44cf4c2f8cSDennis Dalessandro * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 45cf4c2f8cSDennis Dalessandro * 46cf4c2f8cSDennis Dalessandro */ 47cf4c2f8cSDennis Dalessandro #if !defined(__RVT_TRACE_RVT_H) || defined(TRACE_HEADER_MULTI_READ) 48cf4c2f8cSDennis Dalessandro #define __RVT_TRACE_RVT_H 49cf4c2f8cSDennis Dalessandro 50cf4c2f8cSDennis Dalessandro #include <linux/tracepoint.h> 51cf4c2f8cSDennis Dalessandro #include <linux/trace_seq.h> 52cf4c2f8cSDennis Dalessandro 53cf4c2f8cSDennis Dalessandro #include <rdma/ib_verbs.h> 54cf4c2f8cSDennis Dalessandro #include <rdma/rdma_vt.h> 55cf4c2f8cSDennis Dalessandro 56cf4c2f8cSDennis Dalessandro #undef TRACE_SYSTEM 57cf4c2f8cSDennis Dalessandro #define TRACE_SYSTEM rvt 58cf4c2f8cSDennis Dalessandro 59cf4c2f8cSDennis Dalessandro TRACE_EVENT(rvt_dbg, 60cf4c2f8cSDennis Dalessandro TP_PROTO(struct rvt_dev_info *rdi, 61cf4c2f8cSDennis Dalessandro const char *msg), 62cf4c2f8cSDennis Dalessandro TP_ARGS(rdi, msg), 63cf4c2f8cSDennis Dalessandro TP_STRUCT__entry( 64cf4c2f8cSDennis Dalessandro RDI_DEV_ENTRY(rdi) 65cf4c2f8cSDennis Dalessandro __string(msg, msg) 66cf4c2f8cSDennis Dalessandro ), 67cf4c2f8cSDennis Dalessandro TP_fast_assign( 68cf4c2f8cSDennis Dalessandro RDI_DEV_ASSIGN(rdi); 69cf4c2f8cSDennis Dalessandro __assign_str(msg, msg); 70cf4c2f8cSDennis Dalessandro ), 71cf4c2f8cSDennis Dalessandro TP_printk("[%s]: %s", __get_str(dev), __get_str(msg)) 72cf4c2f8cSDennis Dalessandro ); 73cf4c2f8cSDennis Dalessandro 74cf4c2f8cSDennis Dalessandro #endif /* __RVT_TRACE_MISC_H */ 75cf4c2f8cSDennis Dalessandro 76cf4c2f8cSDennis Dalessandro #undef TRACE_INCLUDE_PATH 77cf4c2f8cSDennis Dalessandro #undef TRACE_INCLUDE_FILE 78cf4c2f8cSDennis Dalessandro #define TRACE_INCLUDE_PATH . 79cf4c2f8cSDennis Dalessandro #define TRACE_INCLUDE_FILE trace_rvt 80cf4c2f8cSDennis Dalessandro #include <trace/define_trace.h> 81cf4c2f8cSDennis Dalessandro 82