summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch71
1 files changed, 0 insertions, 71 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch b/meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch
deleted file mode 100644
index a71bb728f0..0000000000
--- a/meta/recipes-kernel/lttng/lttng-modules/0008-fix-KVM-x86-mmu-Return-unique-RET_PF_-values-if-the-.patch
+++ /dev/null
@@ -1,71 +0,0 @@
1From 14bbccffa579f4d66e2900843d6afae1294ce7c8 Mon Sep 17 00:00:00 2001
2From: Michael Jeanson <mjeanson@efficios.com>
3Date: Mon, 26 Oct 2020 17:07:13 -0400
4Subject: [PATCH 08/16] fix: KVM: x86/mmu: Return unique RET_PF_* values if the
5 fault was fixed (v5.10)
6
7See upstream commit :
8
9 commit c4371c2a682e0da1ed2cd7e3c5496f055d873554
10 Author: Sean Christopherson <sean.j.christopherson@intel.com>
11 Date: Wed Sep 23 15:04:24 2020 -0700
12
13 KVM: x86/mmu: Return unique RET_PF_* values if the fault was fixed
14
15 Introduce RET_PF_FIXED and RET_PF_SPURIOUS to provide unique return
16 values instead of overloading RET_PF_RETRY. In the short term, the
17 unique values add clarity to the code and RET_PF_SPURIOUS will be used
18 by set_spte() to avoid unnecessary work for spurious faults.
19
20 In the long term, TDX will use RET_PF_FIXED to deterministically map
21 memory during pre-boot. The page fault flow may bail early for benign
22 reasons, e.g. if the mmu_notifier fires for an unrelated address. With
23 only RET_PF_RETRY, it's impossible for the caller to distinguish between
24 "cool, page is mapped" and "darn, need to try again", and thus cannot
25 handle benign cases like the mmu_notifier retry.
26
27Upstream-Status: Backport
28
29Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
30Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
31Change-Id: Ie0855c78852b45f588e131fe2463e15aae1bc023
32---
33 .../lttng-module/arch/x86/kvm/mmutrace.h | 22 ++++++++++++++++++-
34 1 file changed, 21 insertions(+), 1 deletion(-)
35
36diff --git a/instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h b/instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h
37index 86717835..cdf0609f 100644
38--- a/instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h
39+++ b/instrumentation/events/lttng-module/arch/x86/kvm/mmutrace.h
40@@ -233,7 +233,27 @@ LTTNG_TRACEPOINT_EVENT_MAP(
41 )
42 )
43
44-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) || \
45+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,10,0))
46+LTTNG_TRACEPOINT_EVENT_MAP(
47+ fast_page_fault,
48+
49+ kvm_mmu_fast_page_fault,
50+
51+ TP_PROTO(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, u32 error_code,
52+ u64 *sptep, u64 old_spte, int ret),
53+ TP_ARGS(vcpu, cr2_or_gpa, error_code, sptep, old_spte, ret),
54+
55+ TP_FIELDS(
56+ ctf_integer(int, vcpu_id, vcpu->vcpu_id)
57+ ctf_integer(gpa_t, cr2_or_gpa, cr2_or_gpa)
58+ ctf_integer(u32, error_code, error_code)
59+ ctf_integer_hex(u64 *, sptep, sptep)
60+ ctf_integer(u64, old_spte, old_spte)
61+ ctf_integer(u64, new_spte, *sptep)
62+ ctf_integer(int, ret, ret)
63+ )
64+)
65+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) || \
66 LTTNG_KERNEL_RANGE(4,19,103, 4,20,0) || \
67 LTTNG_KERNEL_RANGE(5,4,19, 5,5,0) || \
68 LTTNG_KERNEL_RANGE(5,5,3, 5,6,0) || \
69--
702.25.1
71