[PATCH] powerpc/book3s: Fix the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE

Subsystems: linux for powerpc (32-bit and 64-bit), the rest

STALE4210d

4 messages, 3 authors, 2015-01-30 · open the first message on its own page

[PATCH] powerpc/book3s: Fix the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE

From: Mahesh J Salgaonkar <hidden>
Date: 2015-01-07 04:43:15

From: Mahesh Salgaonkar <redacted>

commit id 9975f5e added new config variable CONFIG_KVM_BOOK3S_HV_POSSIBLE
that helps to select the relevant code in the kernel when HV and PR
bits are built as separate modules. As part of that commit, all the
instances of #ifdef CONFIG_KVM_BOOK3S_64_HV was replaced with
CONFIG_KVM_BOOK3S_HV_POSSIBLE. But the MCE code still depends on
CONFIG_KVM_BOOK3S_64_HV which is wrong. When HV bits are built as a
separate module the relevent MCE code gets excluded. This patch fixes
the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE.

Signed-off-by: Mahesh Salgaonkar <redacted>
---
 arch/powerpc/kernel/exceptions-64s.S |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index c2df815..7335857 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -1408,7 +1408,7 @@ machine_check_handle_early:
 	bne	9f			/* continue in V mode if we are. */
 
 5:
-#ifdef CONFIG_KVM_BOOK3S_64_HV
+#ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
 	/*
 	 * We are coming from kernel context. Check if we are coming from
 	 * guest. if yes, then we can continue. We will fall through

Re: [PATCH] powerpc/book3s: Fix the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE

From: Aneesh Kumar K.V <hidden>
Date: 2015-01-07 08:16:51

Mahesh J Salgaonkar [off-list ref] writes:
quoted hunk
From: Mahesh Salgaonkar <redacted>

commit id 9975f5e added new config variable CONFIG_KVM_BOOK3S_HV_POSSIBLE
that helps to select the relevant code in the kernel when HV and PR
bits are built as separate modules. As part of that commit, all the
instances of #ifdef CONFIG_KVM_BOOK3S_64_HV was replaced with
CONFIG_KVM_BOOK3S_HV_POSSIBLE. But the MCE code still depends on
CONFIG_KVM_BOOK3S_64_HV which is wrong. When HV bits are built as a
separate module the relevent MCE code gets excluded. This patch fixes
the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE.

Signed-off-by: Mahesh Salgaonkar <redacted>
---
 arch/powerpc/kernel/exceptions-64s.S |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index c2df815..7335857 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -1408,7 +1408,7 @@ machine_check_handle_early:
 	bne	9f			/* continue in V mode if we are. */

 5:
-#ifdef CONFIG_KVM_BOOK3S_64_HV
+#ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
 	/*
 	 * We are coming from kernel context. Check if we are coming from
 	 * guest. if yes, then we can continue. We will fall through
Do we also need to update the HSTATE_IN_GUEST check to avoid checking
the PR guest mode ?ie, 

	lbz	r11,HSTATE_IN_GUEST(r13)
	cmpwi	r11,0			/* Check if coming from guest */

checking for 0 is what you want there ?

-aneesh

Re: [PATCH] powerpc/book3s: Fix the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE

From: Mahesh Jagannath Salgaonkar <hidden>
Date: 2015-01-08 05:28:31

On 01/07/2015 01:46 PM, Aneesh Kumar K.V wrote:
Mahesh J Salgaonkar [off-list ref] writes:
quoted
From: Mahesh Salgaonkar <redacted>

commit id 9975f5e added new config variable CONFIG_KVM_BOOK3S_HV_POSSIBLE
that helps to select the relevant code in the kernel when HV and PR
bits are built as separate modules. As part of that commit, all the
instances of #ifdef CONFIG_KVM_BOOK3S_64_HV was replaced with
CONFIG_KVM_BOOK3S_HV_POSSIBLE. But the MCE code still depends on
CONFIG_KVM_BOOK3S_64_HV which is wrong. When HV bits are built as a
separate module the relevent MCE code gets excluded. This patch fixes
the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE.

Signed-off-by: Mahesh Salgaonkar <redacted>
---
 arch/powerpc/kernel/exceptions-64s.S |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index c2df815..7335857 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -1408,7 +1408,7 @@ machine_check_handle_early:
 	bne	9f			/* continue in V mode if we are. */

 5:
-#ifdef CONFIG_KVM_BOOK3S_64_HV
+#ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
 	/*
 	 * We are coming from kernel context. Check if we are coming from
 	 * guest. if yes, then we can continue. We will fall through
Do we also need to update the HSTATE_IN_GUEST check to avoid checking
the PR guest mode ?ie, 
Not required. If we are coming from guest (HSTATE_IN_GUEST != 0) we fall
through do_kvm_200->kvmppc_interrupt and for PR guest it would lead us
to kvmppc_interrupt_pr which will inject MCE in PR guest.

Having said that I just realized that I should use #ifdef
CONFIG_KVM_BOOK3S_64_HANDLER instead. The check holds good for both HV
and PR guests.

Thanks,
-Mahesh.
	lbz	r11,HSTATE_IN_GUEST(r13)
	cmpwi	r11,0			/* Check if coming from guest */

checking for 0 is what you want there ?

-aneesh

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: powerpc/book3s: Fix the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2015-01-30 06:17:05

On Wed, 2015-07-01 at 04:43:07 UTC, Mahesh Salgaonkar wrote:
From: Mahesh Salgaonkar <redacted>

commit id 9975f5e added new config variable CONFIG_KVM_BOOK3S_HV_POSSIBLE
that helps to select the relevant code in the kernel when HV and PR
bits are built as separate modules. As part of that commit, all the
instances of #ifdef CONFIG_KVM_BOOK3S_64_HV was replaced with
CONFIG_KVM_BOOK3S_HV_POSSIBLE. But the MCE code still depends on
CONFIG_KVM_BOOK3S_64_HV which is wrong. When HV bits are built as a
separate module the relevent MCE code gets excluded. This patch fixes
the MCE code to use CONFIG_KVM_BOOK3S_HV_POSSIBLE.
So what is the symptom? ie. is it fatal or just annoying.

And depending on that, should this go to stable?

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help