X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Farch%2Fx86%2Fkvm%2Ftrace.h;h=1b3b9ebc7ff06d831ce6f8613f1f53a12a5f6642;hb=cf77d12083b5092eca8c6f9899ec0892756845aa;hp=4d8e76316780aad4080dee76a166ec868a421949;hpb=c075712b6e6ba766c844f4504ac012c49d1f6b4b;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/arch/x86/kvm/trace.h b/instrumentation/events/lttng-module/arch/x86/kvm/trace.h index 4d8e7631..1b3b9ebc 100644 --- a/instrumentation/events/lttng-module/arch/x86/kvm/trace.h +++ b/instrumentation/events/lttng-module/arch/x86/kvm/trace.h @@ -1,7 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ #if !defined(LTTNG_TRACE_KVM_H) || defined(TRACE_HEADER_MULTI_READ) #define LTTNG_TRACE_KVM_H -#include +#include #include #include #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) @@ -123,8 +124,13 @@ LTTNG_TRACEPOINT_EVENT_CODE_MAP(kvm_exit, kvm_x86_exit, ), TP_code_pre( +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) + kvm_x86_ops.get_exit_info(vcpu, &tp_locvar->info1, + &tp_locvar->info2); +#else kvm_x86_ops->get_exit_info(vcpu, &tp_locvar->info1, &tp_locvar->info2); +#endif ), TP_FIELDS( @@ -172,7 +178,7 @@ LTTNG_TRACEPOINT_EVENT_MAP(kvm_page_fault, kvm_x86_page_fault, TP_ARGS(fault_address, error_code), TP_FIELDS( - ctf_integer(unsigned long, fault_address, fault_address) + ctf_integer_hex(unsigned long, fault_address, fault_address) ctf_integer(unsigned int, error_code, error_code) ) ) @@ -362,7 +368,7 @@ LTTNG_TRACEPOINT_EVENT_MAP(kvm_invlpga, kvm_x86_invlpga, TP_FIELDS( ctf_integer(__u64, rip, rip) ctf_integer(int, asid, asid) - ctf_integer(__u64, address, address) + ctf_integer_hex(__u64, address, address) ) ) @@ -429,13 +435,15 @@ LTTNG_TRACEPOINT_EVENT_MAP(kvm_emulate_insn, kvm_x86_emulate_insn, ctf_integer(__u8, len, vcpu->arch.emulate_ctxt.decode.eip - vcpu->arch.emulate_ctxt.decode.fetch.start) ctf_array(__u8, insn, vcpu->arch.emulate_ctxt.decode.fetch.data, 15) + ctf_integer(__u8, flags, kei_decode_mode(vcpu->arch.emulate_ctxt.mode)) #elif (LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0)) ctf_integer(__u64, rip, vcpu->arch.emulate_ctxt.fetch.start) ctf_integer(__u32, csbase, kvm_x86_ops->get_segment_base(vcpu, VCPU_SREG_CS)) ctf_integer(__u8, len, vcpu->arch.emulate_ctxt._eip - vcpu->arch.emulate_ctxt.fetch.start) ctf_array(__u8, insn, vcpu->arch.emulate_ctxt.fetch.data, 15) -#else + ctf_integer(__u8, flags, kei_decode_mode(vcpu->arch.emulate_ctxt.mode)) +#elif (LINUX_VERSION_CODE < KERNEL_VERSION(5,7,0)) ctf_integer(__u64, rip, vcpu->arch.emulate_ctxt._eip - (vcpu->arch.emulate_ctxt.fetch.ptr - vcpu->arch.emulate_ctxt.fetch.data)) @@ -443,8 +451,17 @@ LTTNG_TRACEPOINT_EVENT_MAP(kvm_emulate_insn, kvm_x86_emulate_insn, ctf_integer(__u8, len, vcpu->arch.emulate_ctxt.fetch.ptr - vcpu->arch.emulate_ctxt.fetch.data) ctf_array(__u8, insn, vcpu->arch.emulate_ctxt.fetch.data, 15) -#endif ctf_integer(__u8, flags, kei_decode_mode(vcpu->arch.emulate_ctxt.mode)) +#else + ctf_integer(__u64, rip, vcpu->arch.emulate_ctxt->_eip - + (vcpu->arch.emulate_ctxt->fetch.ptr - + vcpu->arch.emulate_ctxt->fetch.data)) + ctf_integer(__u32, csbase, kvm_x86_ops.get_segment_base(vcpu, VCPU_SREG_CS)) + ctf_integer(__u8, len, vcpu->arch.emulate_ctxt->fetch.ptr - + vcpu->arch.emulate_ctxt->fetch.data) + ctf_array(__u8, insn, vcpu->arch.emulate_ctxt->fetch.data, 15) + ctf_integer(__u8, flags, kei_decode_mode(vcpu->arch.emulate_ctxt->mode)) +#endif ctf_integer(__u8, failed, failed) ) ) @@ -520,4 +537,4 @@ LTTNG_TRACEPOINT_EVENT_MAP(kvm_track_tsc, kvm_x86_track_tsc, #define TRACE_INCLUDE_FILE trace /* This part must be outside protection */ -#include +#include