Re: linux-next: manual merge of the kvm tree with the rcu tree

From: Stephen Rothwell
Date: Mon May 18 2020 - 01:46:53 EST


Hi all,

On Mon, 18 May 2020 15:42:40 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Today's linux-next merge of the kvm tree got a conflict in:
>
> arch/x86/kvm/svm/svm.c
>
> between commit:
>
> 9f24847d8fdb ("kvm/svm: Disable KCSAN for svm_vcpu_run()")
>
> from the rcu tree and commits:
>
> a9ab13ff6e84 ("KVM: X86: Improve latency for single target IPI fastpath")
> 404d5d7bff0d ("KVM: X86: Introduce more exit_fastpath_completion enum values")
>
> from the kvm tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.

--
Cheers,
Stephen Rothwell

diff --cc arch/x86/kvm/svm/svm.c
index dca2bdbe34a7,4e9cd2a73ad0..000000000000
--- a/arch/x86/kvm/svm/svm.c
+++ b/arch/x86/kvm/svm/svm.c
@@@ -3279,10 -3315,21 +3315,21 @@@ static void svm_cancel_injection(struc
svm_complete_interrupts(svm);
}

+ static fastpath_t svm_exit_handlers_fastpath(struct kvm_vcpu *vcpu)
+ {
+ if (!is_guest_mode(vcpu) &&
+ to_svm(vcpu)->vmcb->control.exit_code == SVM_EXIT_MSR &&
+ to_svm(vcpu)->vmcb->control.exit_info_1)
+ return handle_fastpath_set_msr_irqoff(vcpu);
+
+ return EXIT_FASTPATH_NONE;
+ }
+
void __svm_vcpu_run(unsigned long vmcb_pa, unsigned long *regs);

- static __no_kcsan void svm_vcpu_run(struct kvm_vcpu *vcpu)
-static fastpath_t svm_vcpu_run(struct kvm_vcpu *vcpu)
++static __no_kcsan fastpath_t svm_vcpu_run(struct kvm_vcpu *vcpu)
{
+ fastpath_t exit_fastpath;
struct vcpu_svm *svm = to_svm(vcpu);

svm->vmcb->save.rax = vcpu->arch.regs[VCPU_REGS_RAX];
s

Attachment: pgpgPo_bWhJaq.pgp
Description: OpenPGP digital signature