Patchwork [1/2] KVM: PPC: Not optimizing MSR_CE and MSR_DE with paravirt.

login
register
mail settings
Submitter Bharat Bhushan
Date May 15, 2012, 7:34 a.m.
Message ID <1337067282-26549-1-git-send-email-bharat.bhushan@freescale.com>
Download mbox | patch
Permalink /patch/159240/
State New
Headers show

Comments

Bharat Bhushan - May 15, 2012, 7:27 a.m.
Please ignore this patch as this is having 1/2.
This is only one patch. Will send after removing 1/2

Thanks
-Bharat


> -----Original Message-----
> From: Bhushan Bharat-R65777
> Sent: Tuesday, May 15, 2012 1:05 PM
> To: kvm-ppc@vger.kernel.org; agraf@suse.de
> Cc: Bhushan Bharat-R65777; Bhushan Bharat-R65777
> Subject: [PATCH 1/2] KVM: PPC: Not optimizing MSR_CE and MSR_DE with paravirt.
> 
> From: Bhushan Bharat-R65777 <R65777@freescale.com>
> 
> If there is pending critical or machine check interrupt then guest would like to
> capture it when guest enable MSR.CE and MSR_ME respectively.
> Also as mostly MSR_CE and MSR_ME are updated with rfi/rfci/rfmii which anyway
> traps so removing the the paravirt optimization for MSR.CE and MSR.ME.
> 
> Signed-off-by: Bharat Bhushan <bharat.bhushan@freescale.com>
> ---
>  Documentation/virtual/kvm/ppc-pv.txt |    2 --
>  arch/powerpc/kernel/kvm_emul.S       |    2 +-
>  2 files changed, 1 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/virtual/kvm/ppc-pv.txt
> b/Documentation/virtual/kvm/ppc-pv.txt
> index 6e7c370..4911cf9 100644
> --- a/Documentation/virtual/kvm/ppc-pv.txt
> +++ b/Documentation/virtual/kvm/ppc-pv.txt
> @@ -109,8 +109,6 @@ The following bits are safe to be set inside the guest:
> 
>    MSR_EE
>    MSR_RI
> -  MSR_CR
> -  MSR_ME
> 
>  If any other bit changes in the MSR, please still use mtmsr(d).
> 
> diff --git a/arch/powerpc/kernel/kvm_emul.S b/arch/powerpc/kernel/kvm_emul.S
> index e291cf3..3dfa890 100644
> --- a/arch/powerpc/kernel/kvm_emul.S
> +++ b/arch/powerpc/kernel/kvm_emul.S
> @@ -132,7 +132,7 @@ kvm_emulate_mtmsrd_len:
>  	.long (kvm_emulate_mtmsrd_end - kvm_emulate_mtmsrd) / 4
> 
> 
> -#define MSR_SAFE_BITS (MSR_EE | MSR_CE | MSR_ME | MSR_RI)
> +#define MSR_SAFE_BITS (MSR_EE | MSR_RI)
>  #define MSR_CRITICAL_BITS ~MSR_SAFE_BITS
> 
>  .global kvm_emulate_mtmsr
> --
> 1.7.0.4


--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Bharat Bhushan - May 15, 2012, 7:34 a.m.
From: Bhushan Bharat-R65777 <R65777@freescale.com>

If there is pending critical or machine check interrupt then guest
would like to capture it when guest enable MSR.CE and MSR_ME respectively.
Also as mostly MSR_CE and MSR_ME are updated with rfi/rfci/rfmii
which anyway traps so removing the the paravirt optimization for MSR.CE
and MSR.ME.

Signed-off-by: Bharat Bhushan <bharat.bhushan@freescale.com>
---
 Documentation/virtual/kvm/ppc-pv.txt |    2 --
 arch/powerpc/kernel/kvm_emul.S       |    2 +-
 2 files changed, 1 insertions(+), 3 deletions(-)

Patch

diff --git a/Documentation/virtual/kvm/ppc-pv.txt b/Documentation/virtual/kvm/ppc-pv.txt
index 6e7c370..4911cf9 100644
--- a/Documentation/virtual/kvm/ppc-pv.txt
+++ b/Documentation/virtual/kvm/ppc-pv.txt
@@ -109,8 +109,6 @@  The following bits are safe to be set inside the guest:
 
   MSR_EE
   MSR_RI
-  MSR_CR
-  MSR_ME
 
 If any other bit changes in the MSR, please still use mtmsr(d).
 
diff --git a/arch/powerpc/kernel/kvm_emul.S b/arch/powerpc/kernel/kvm_emul.S
index e291cf3..3dfa890 100644
--- a/arch/powerpc/kernel/kvm_emul.S
+++ b/arch/powerpc/kernel/kvm_emul.S
@@ -132,7 +132,7 @@  kvm_emulate_mtmsrd_len:
 	.long (kvm_emulate_mtmsrd_end - kvm_emulate_mtmsrd) / 4
 
 
-#define MSR_SAFE_BITS (MSR_EE | MSR_CE | MSR_ME | MSR_RI)
+#define MSR_SAFE_BITS (MSR_EE | MSR_RI)
 #define MSR_CRITICAL_BITS ~MSR_SAFE_BITS
 
 .global kvm_emulate_mtmsr