summaryrefslogtreecommitdiff
path: root/arch/x86/kvm/svm/svm.h
diff options
context:
space:
mode:
authorMaxim Levitsky <mlevitsk@redhat.com>2022-03-22 20:40:46 +0300
committerPaolo Bonzini <pbonzini@redhat.com>2022-04-02 12:41:23 +0300
commitd20c796ca3709801f8a7fa36e8770a3dd8ebd34e (patch)
tree6515cc9fa05fa3401d7bd8d2bfc13f1aaad14a6e /arch/x86/kvm/svm/svm.h
parent1d5a1b5860ed6f623071329112e5935db043eb55 (diff)
downloadlinux-d20c796ca3709801f8a7fa36e8770a3dd8ebd34e.tar.xz
KVM: x86: nSVM: implement nested LBR virtualization
This was tested with kvm-unit-test that was developed for this purpose. Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com> Message-Id: <20220322174050.241850-3-mlevitsk@redhat.com> [Copy all of DEBUGCTL except for reserved bits. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/kvm/svm/svm.h')
-rw-r--r--arch/x86/kvm/svm/svm.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kvm/svm/svm.h b/arch/x86/kvm/svm/svm.h
index 47d4f389bf91..b687393e86ad 100644
--- a/arch/x86/kvm/svm/svm.h
+++ b/arch/x86/kvm/svm/svm.h
@@ -236,6 +236,7 @@ struct vcpu_svm {
bool nrips_enabled : 1;
bool tsc_scaling_enabled : 1;
bool v_vmload_vmsave_enabled : 1;
+ bool lbrv_enabled : 1;
u32 ldr_reg;
u32 dfr_reg;
@@ -486,6 +487,8 @@ static inline bool nested_npt_enabled(struct vcpu_svm *svm)
/* svm.c */
#define MSR_INVALID 0xffffffffU
+#define DEBUGCTL_RESERVED_BITS (~(0x3fULL))
+
extern bool dump_invalid_vmcb;
u32 svm_msrpm_offset(u32 msr);