-/* SPDX-License-Identifier: GPL-2.0 */
+/* SPDX-License-Identifier: GPL-2.0-only */
#if !defined(LTTNG_TRACE_KVM_H) || defined(TRACE_HEADER_MULTI_READ)
#define LTTNG_TRACE_KVM_H
-#include <probes/lttng-tracepoint-event.h>
+#include <lttng/tracepoint-event.h>
#include <asm/vmx.h>
#include <asm/svm.h>
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0))
),
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(
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)
)
)
TP_FIELDS(
ctf_integer(__u64, rip, rip)
ctf_integer(int, asid, asid)
- ctf_integer(__u64, address, address)
+ ctf_integer_hex(__u64, address, address)
)
)
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))
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)
)
)
#define TRACE_INCLUDE_FILE trace
/* This part must be outside protection */
-#include <probes/define_trace.h>
+#include <lttng/define_trace.h>