1 /* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 2012 MIPS Technologies, Inc. All rights reserved. 7 * Authors: Sanjay Lal <sanjayl@kymasys.com> 8 */ 9 10 #if !defined(_TRACE_KVM_H) || defined(TRACE_HEADER_MULTI_READ) 11 #define _TRACE_KVM_H 12 13 #include <linux/tracepoint.h> 14 15 #undef TRACE_SYSTEM 16 #define TRACE_SYSTEM kvm 17 #define TRACE_INCLUDE_PATH . 18 #define TRACE_INCLUDE_FILE trace 19 20 /* Tracepoints for VM eists */ 21 extern char *kvm_mips_exit_types_str[MAX_KVM_MIPS_EXIT_TYPES]; 22 23 TRACE_EVENT(kvm_exit, 24 TP_PROTO(struct kvm_vcpu *vcpu, unsigned int reason), 25 TP_ARGS(vcpu, reason), 26 TP_STRUCT__entry( 27 __field(unsigned long, pc) 28 __field(unsigned int, reason) 29 ), 30 31 TP_fast_assign( 32 __entry->pc = vcpu->arch.pc; 33 __entry->reason = reason; 34 ), 35 36 TP_printk("[%s]PC: 0x%08lx", 37 kvm_mips_exit_types_str[__entry->reason], 38 __entry->pc) 39 ); 40 41 #endif /* _TRACE_KVM_H */ 42 43 /* This part must be outside protection */ 44 #include <trace/define_trace.h> 45