Commit | Line | Data |
---|---|---|
9f36eaed MJ |
1 | /* SPDX-License-Identifier: (GPL-2.0 or LGPL-2.1) |
2 | * | |
b3c40230 MG |
3 | * probes/lttng-probe-kvm.c |
4 | * | |
5 | * LTTng kvm probes. | |
6 | * | |
7 | * Copyright (C) 2010-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | |
b3c40230 MG |
8 | */ |
9 | ||
10 | #include <linux/module.h> | |
11 | #include <linux/kvm_host.h> | |
156a3977 MD |
12 | #include <lttng-tracer.h> |
13 | #include <lttng-kernel-version.h> | |
1de8b2e4 MD |
14 | |
15 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)) | |
16 | #include <kvm/iodev.h> | |
17 | #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)) */ | |
18 | #include <../../virt/kvm/iodev.h> | |
19 | #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)) */ | |
b3c40230 MG |
20 | |
21 | /* | |
22 | * Create the tracepoint static inlines from the kernel to validate that our | |
23 | * trace event macros match the kernel we run on. | |
24 | */ | |
156a3977 | 25 | #include <wrapper/tracepoint.h> |
b3c40230 | 26 | |
8fa34f3a | 27 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,9,0)) |
ac42bcf7 | 28 | #include <../../arch/x86/kvm/mmu/mmu_internal.h> |
8fa34f3a MJ |
29 | #include <../../arch/x86/kvm/mmu/mmutrace.h> |
30 | #else | |
c035cd50 | 31 | #include <../../arch/x86/kvm/mmutrace.h> |
8fa34f3a | 32 | #endif |
c035cd50 | 33 | |
2f421c43 MJ |
34 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,10,0)) |
35 | #include <../arch/x86/kvm/mmu.h> | |
36 | #include <../arch/x86/kvm/mmu/spte.h> | |
37 | #endif | |
38 | ||
c035cd50 MD |
39 | #undef TRACE_INCLUDE_PATH |
40 | #undef TRACE_INCLUDE_FILE | |
41 | ||
b3c40230 MG |
42 | /* |
43 | * Create LTTng tracepoint probes. | |
44 | */ | |
45 | #define LTTNG_PACKAGE_BUILD | |
46 | #define CREATE_TRACE_POINTS | |
47 | ||
156a3977 MD |
48 | #define TRACE_INCLUDE_PATH instrumentation/events/lttng-module/arch/x86/kvm |
49 | #include <instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h> | |
b3c40230 MG |
50 | |
51 | MODULE_LICENSE("GPL and additional rights"); | |
52 | MODULE_AUTHOR("Mathieu Desnoyers <mathieu.desnoyers@efficios.com>"); | |
53 | MODULE_DESCRIPTION("LTTng kvm mmu probes"); | |
13ab8b0a MD |
54 | MODULE_VERSION(__stringify(LTTNG_MODULES_MAJOR_VERSION) "." |
55 | __stringify(LTTNG_MODULES_MINOR_VERSION) "." | |
56 | __stringify(LTTNG_MODULES_PATCHLEVEL_VERSION) | |
57 | LTTNG_MODULES_EXTRAVERSION); |