2 * probes/lttng-probe-kvm.c
6 * Copyright (C) 2010-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; only
11 * version 2.1 of the License.
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 #include <linux/module.h>
24 #include <linux/kvm_host.h>
25 #include "../lttng-tracer.h"
26 #include "../lttng-kernel-version.h"
28 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0))
29 #include <kvm/iodev.h>
30 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)) */
31 #include <../../virt/kvm/iodev.h>
32 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0)) */
35 * Create the tracepoint static inlines from the kernel to validate that our
36 * trace event macros match the kernel we run on.
38 #include "../wrapper/tracepoint.h"
40 #include <../../arch/x86/kvm/mmutrace.h>
42 #undef TRACE_INCLUDE_PATH
43 #undef TRACE_INCLUDE_FILE
46 * Create LTTng tracepoint probes.
48 #define LTTNG_PACKAGE_BUILD
49 #define CREATE_TRACE_POINTS
51 #define TRACE_INCLUDE_PATH ../instrumentation/events/lttng-module/arch/x86/kvm
52 #include "../instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h"
54 MODULE_LICENSE("GPL and additional rights");
55 MODULE_AUTHOR("Mathieu Desnoyers <mathieu.desnoyers@efficios.com>");
56 MODULE_DESCRIPTION("LTTng kvm mmu probes");
57 MODULE_VERSION(__stringify(LTTNG_MODULES_MAJOR_VERSION
) "."
58 __stringify(LTTNG_MODULES_MINOR_VERSION
) "."
59 __stringify(LTTNG_MODULES_PATCHLEVEL_VERSION
)
60 LTTNG_MODULES_EXTRAVERSION
);