[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-be0e16ce7c3bf9855f1ef5ae46cf889e1784ddea@git.kernel.org>
Date: Thu, 19 Jul 2018 22:00:50 -0700
From: "tip-bot for K. Y. Srinivasan" <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: mikelley@...rosoft.com, linux-kernel@...r.kernel.org,
mingo@...nel.org, kys@...rosoft.com, tglx@...utronix.de,
hpa@...or.com
Subject: [tip:x86/hyperv] x86/hyper-v: Fix wrong merge conflict resolution
Commit-ID: be0e16ce7c3bf9855f1ef5ae46cf889e1784ddea
Gitweb: https://git.kernel.org/tip/be0e16ce7c3bf9855f1ef5ae46cf889e1784ddea
Author: K. Y. Srinivasan <kys@...rosoft.com>
AuthorDate: Fri, 20 Jul 2018 03:50:09 +0000
Committer: Thomas Gleixner <tglx@...utronix.de>
CommitDate: Fri, 20 Jul 2018 06:56:23 +0200
x86/hyper-v: Fix wrong merge conflict resolution
When the mapping betwween the Linux notion of CPU ID to the hypervisor's
notion of CPU ID is not initialized, IPI must fall back to the
non-enlightened path.
The recent merge of upstream changes into the hyperv branch resolved a
merge conflict wronly by returning success in that case, which results in
the IPI not being sent at all. Fix it up.
Fixes: 8f63e9230dec ("Merge branch 'x86/urgent' into x86/hyperv")
Reported-by: Michael Kelley <mikelley@...rosoft.com>
Signed-off-by: K. Y. Srinivasan <kys@...rosoft.com>
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
Cc: gregkh@...uxfoundation.org
Cc: devel@...uxdriverproject.org
Cc: olaf@...fle.de
Cc: apw@...onical.com
Cc: jasowang@...hat.com
Cc: hpa@...or.com
Cc: sthemmin@...rosoft.com
Cc: Michael.H.Kelley@...rosoft.com
Cc: vkuznets@...hat.com
Link: https://lkml.kernel.org/r/20180720035009.3995-1-kys@linuxonhyperv.com
---
arch/x86/hyperv/hv_apic.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/hyperv/hv_apic.c b/arch/x86/hyperv/hv_apic.c
index 0c3c9f8fee77..5b0f613428c2 100644
--- a/arch/x86/hyperv/hv_apic.c
+++ b/arch/x86/hyperv/hv_apic.c
@@ -168,7 +168,7 @@ static bool __send_ipi_mask(const struct cpumask *mask, int vector)
for_each_cpu(cur_cpu, mask) {
vcpu = hv_cpu_number_to_vp_number(cur_cpu);
if (vcpu == VP_INVAL)
- return true;
+ return false;
/*
* This particular version of the IPI hypercall can
Powered by blists - more mailing lists