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