From: Stephen Rothwell <sfr@canb.auug.org.au>
To: "Paolo Bonzini" <pbonzini@redhat.com>,
"Radim Krčmář" <rkrcmar@redhat.com>, KVM <kvm@vger.kernel.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Ingo Molnar" <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
"Peter Zijlstra" <peterz@infradead.org>
Cc: Linux Next Mailing List <linux-next@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Dave Hansen <dave.hansen@intel.com>,
Sean Christopherson <sean.j.christopherson@intel.com>
Subject: linux-next: build failure after merge of the kvm tree
Date: Wed, 19 Dec 2018 15:33:20 +1100 [thread overview]
Message-ID: <20181219153320.2ef0e07b@canb.auug.org.au> (raw)
[-- Attachment #1: Type: text/plain, Size: 5372 bytes --]
Hi all,
After merging the kvm tree, today's linux-next build (x86_64 allmodconfig)
failed like this:
arch/x86/kvm/vmx/nested.c: In function 'prepare_vmcs02_full':
arch/x86/kvm/vmx/nested.c:2242:6: error: implicit declaration of function 'kvm_mpx_supported'; did you mean 'vmx_mpx_supported'? [-Werror=implicit-function-declaration]
if (kvm_mpx_supported()) {
^~~~~~~~~~~~~~~~~
vmx_mpx_supported
Caused by commit
55d2375e58a6 ("KVM: nVMX: Move nested code to dedicated files")
interacting with commit
eb012ef3b4e3 ("x86: Remove Intel MPX")
from the tip tree.
I applied the following merge fix patch for today:
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 19 Dec 2018 15:28:31 +1100
Subject: [PATCH] kvm: tidy up from MPX removal
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
arch/x86/kvm/vmx/nested.c | 13 -------------
arch/x86/kvm/vmx/vmx.c | 40 +++------------------------------------
2 files changed, 3 insertions(+), 50 deletions(-)
diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c
index 3f019aa63341..59e6da4171a8 100644
--- a/arch/x86/kvm/vmx/nested.c
+++ b/arch/x86/kvm/vmx/nested.c
@@ -2238,14 +2238,6 @@ static void prepare_vmcs02_full(struct vcpu_vmx *vmx, struct vmcs12 *vmcs12)
vmcs_write32(VM_ENTRY_MSR_LOAD_COUNT, vmx->msr_autoload.guest.nr);
set_cr4_guest_host_mask(vmx);
-
- if (kvm_mpx_supported()) {
- if (vmx->nested.nested_run_pending &&
- (vmcs12->vm_entry_controls & VM_ENTRY_LOAD_BNDCFGS))
- vmcs_write64(GUEST_BNDCFGS, vmcs12->guest_bndcfgs);
- else
- vmcs_write64(GUEST_BNDCFGS, vmx->nested.vmcs01_guest_bndcfgs);
- }
}
/*
@@ -2971,9 +2963,6 @@ int nested_vmx_enter_non_root_mode(struct kvm_vcpu *vcpu, bool from_vmentry)
if (!(vmcs12->vm_entry_controls & VM_ENTRY_LOAD_DEBUG_CONTROLS))
vmx->nested.vmcs01_debugctl = vmcs_read64(GUEST_IA32_DEBUGCTL);
- if (kvm_mpx_supported() &&
- !(vmcs12->vm_entry_controls & VM_ENTRY_LOAD_BNDCFGS))
- vmx->nested.vmcs01_guest_bndcfgs = vmcs_read64(GUEST_BNDCFGS);
vmx_switch_vmcs(vcpu, &vmx->nested.vmcs02);
@@ -3496,8 +3485,6 @@ static void sync_vmcs12(struct kvm_vcpu *vcpu, struct vmcs12 *vmcs12)
vmcs12->guest_sysenter_cs = vmcs_read32(GUEST_SYSENTER_CS);
vmcs12->guest_sysenter_esp = vmcs_readl(GUEST_SYSENTER_ESP);
vmcs12->guest_sysenter_eip = vmcs_readl(GUEST_SYSENTER_EIP);
- if (kvm_mpx_supported())
- vmcs12->guest_bndcfgs = vmcs_read64(GUEST_BNDCFGS);
}
/*
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index c90fffdc5a93..ccab822be9cd 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -1527,12 +1527,7 @@ static int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
msr_info->data = vmcs_readl(GUEST_SYSENTER_ESP);
break;
case MSR_IA32_BNDCFGS:
- if (!kvm_mpx_supported() ||
- (!msr_info->host_initiated &&
- !guest_cpuid_has(vcpu, X86_FEATURE_MPX)))
- return 1;
- msr_info->data = vmcs_read64(GUEST_BNDCFGS);
- break;
+ return 1;
case MSR_IA32_MCG_EXT_CTL:
if (!msr_info->host_initiated &&
!(vmx->msr_ia32_feature_control &
@@ -1610,15 +1605,7 @@ static int vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
vmcs_writel(GUEST_SYSENTER_ESP, data);
break;
case MSR_IA32_BNDCFGS:
- if (!kvm_mpx_supported() ||
- (!msr_info->host_initiated &&
- !guest_cpuid_has(vcpu, X86_FEATURE_MPX)))
- return 1;
- if (is_noncanonical_address(data & PAGE_MASK, vcpu) ||
- (data & MSR_IA32_BNDCFGS_RSVD))
- return 1;
- vmcs_write64(GUEST_BNDCFGS, data);
- break;
+ return 1;
case MSR_IA32_SPEC_CTRL:
if (!msr_info->host_initiated &&
!guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL))
@@ -3868,8 +3855,6 @@ static void vmx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event)
vmcs_write32(GUEST_ACTIVITY_STATE, GUEST_ACTIVITY_ACTIVE);
vmcs_write32(GUEST_INTERRUPTIBILITY_INFO, 0);
vmcs_writel(GUEST_PENDING_DBG_EXCEPTIONS, 0);
- if (kvm_mpx_supported())
- vmcs_write64(GUEST_BNDCFGS, 0);
setup_msrs(vmx);
@@ -6636,23 +6621,6 @@ static void nested_vmx_cr_fixed1_bits_update(struct kvm_vcpu *vcpu)
#undef cr4_fixed1_update
}
-static void nested_vmx_entry_exit_ctls_update(struct kvm_vcpu *vcpu)
-{
- struct vcpu_vmx *vmx = to_vmx(vcpu);
-
- if (kvm_mpx_supported()) {
- bool mpx_enabled = guest_cpuid_has(vcpu, X86_FEATURE_MPX);
-
- if (mpx_enabled) {
- vmx->nested.msrs.entry_ctls_high |= VM_ENTRY_LOAD_BNDCFGS;
- vmx->nested.msrs.exit_ctls_high |= VM_EXIT_CLEAR_BNDCFGS;
- } else {
- vmx->nested.msrs.entry_ctls_high &= ~VM_ENTRY_LOAD_BNDCFGS;
- vmx->nested.msrs.exit_ctls_high &= ~VM_EXIT_CLEAR_BNDCFGS;
- }
- }
-}
-
static void vmx_cpuid_update(struct kvm_vcpu *vcpu)
{
struct vcpu_vmx *vmx = to_vmx(vcpu);
@@ -6669,10 +6637,8 @@ static void vmx_cpuid_update(struct kvm_vcpu *vcpu)
to_vmx(vcpu)->msr_ia32_feature_control_valid_bits &=
~FEATURE_CONTROL_VMXON_ENABLED_OUTSIDE_SMX;
- if (nested_vmx_allowed(vcpu)) {
+ if (nested_vmx_allowed(vcpu))
nested_vmx_cr_fixed1_bits_update(vcpu);
- nested_vmx_entry_exit_ctls_update(vcpu);
- }
}
static void vmx_set_supported_cpuid(u32 func, struct kvm_cpuid_entry2 *entry)
--
2.19.1
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next reply other threads:[~2018-12-19 4:33 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-19 4:33 Stephen Rothwell [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-04-12 3:34 linux-next: build failure after merge of the kvm tree Stephen Rothwell
2024-04-12 3:35 ` Stephen Rothwell
2024-04-12 12:14 ` Paolo Bonzini
2023-11-22 2:14 Stephen Rothwell
2023-11-20 4:22 Stephen Rothwell
2023-12-11 2:50 ` Stephen Rothwell
2022-04-19 5:34 Stephen Rothwell
2022-04-19 16:01 ` Sean Christopherson
2022-04-19 16:09 ` Paolo Bonzini
2022-04-21 18:06 ` Paolo Bonzini
2022-04-27 3:23 ` Stephen Rothwell
2022-04-27 6:06 ` Paolo Bonzini
2021-02-08 5:33 Stephen Rothwell
2021-02-08 11:18 ` Yu Zhang
2021-02-05 5:02 Stephen Rothwell
2021-02-05 10:08 ` Paolo Bonzini
2021-02-07 19:48 ` Stephen Rothwell
2021-02-09 4:56 ` Stephen Rothwell
2020-07-17 5:57 Stephen Rothwell
2020-07-29 7:06 ` Stephen Rothwell
2020-05-21 6:28 Stephen Rothwell
2020-06-04 2:54 ` Stephen Rothwell
2019-02-18 3:42 Stephen Rothwell
2019-02-19 15:36 ` Sean Christopherson
2019-02-19 18:17 ` Paolo Bonzini
2017-02-08 3:23 Stephen Rothwell
2016-12-19 1:11 Stephen Rothwell
2015-09-08 1:35 Stephen Rothwell
2015-09-08 2:10 ` Wanpeng Li
2015-09-08 9:24 ` Paolo Bonzini
2015-05-29 7:36 Stephen Rothwell
2015-05-29 7:54 ` Ingo Molnar
2015-05-29 12:08 ` Paolo Bonzini
2014-11-24 6:19 Stephen Rothwell
2014-11-24 9:38 ` Paolo Bonzini
2014-08-06 4:39 Stephen Rothwell
2014-03-11 23:55 Mark Brown
2014-01-10 3:00 Stephen Rothwell
2014-01-17 4:03 ` Stephen Rothwell
2012-08-23 3:21 Stephen Rothwell
2012-03-06 4:53 Stephen Rothwell
2012-03-06 10:34 ` Avi Kivity
2010-08-30 1:35 Stephen Rothwell
2010-08-30 10:03 ` Alexander Graf
2010-08-30 10:56 ` Avi Kivity
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181219153320.2ef0e07b@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=dave.hansen@intel.com \
--cc=hpa@zytor.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=rkrcmar@redhat.com \
--cc=sean.j.christopherson@intel.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).