aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBharat Bhushan <r65777@freescale.com>2012-05-20 19:21:53 -0400
committerAlexander Graf <agraf@suse.de>2012-05-30 05:43:11 -0400
commitd35b1075afc0172caa44b57b56a2b9b57e06d32e (patch)
tree9ce55544f23d250c27e84ac5c93a5a9f12693660
parent21bd000abff7d587229dbbee6f8c17f3aad9f9d8 (diff)
KVM: PPC: Not optimizing MSR_CE and MSR_ME with paravirt.
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> Signed-off-by: Alexander Graf <agraf@suse.de>
-rw-r--r--Documentation/virtual/kvm/ppc-pv.txt2
-rw-r--r--arch/powerpc/kernel/kvm_emul.S2
2 files changed, 1 insertions, 3 deletions
diff --git a/Documentation/virtual/kvm/ppc-pv.txt b/Documentation/virtual/kvm/ppc-pv.txt
index 6e7c37050930..4911cf95c67e 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:
109 109
110 MSR_EE 110 MSR_EE
111 MSR_RI 111 MSR_RI
112 MSR_CR
113 MSR_ME
114 112
115If any other bit changes in the MSR, please still use mtmsr(d). 113If any other bit changes in the MSR, please still use mtmsr(d).
116 114
diff --git a/arch/powerpc/kernel/kvm_emul.S b/arch/powerpc/kernel/kvm_emul.S
index 62ceb2ac82cf..e100ff324a85 100644
--- a/arch/powerpc/kernel/kvm_emul.S
+++ b/arch/powerpc/kernel/kvm_emul.S
@@ -122,7 +122,7 @@ kvm_emulate_mtmsrd_len:
122 .long (kvm_emulate_mtmsrd_end - kvm_emulate_mtmsrd) / 4 122 .long (kvm_emulate_mtmsrd_end - kvm_emulate_mtmsrd) / 4
123 123
124 124
125#define MSR_SAFE_BITS (MSR_EE | MSR_CE | MSR_ME | MSR_RI) 125#define MSR_SAFE_BITS (MSR_EE | MSR_RI)
126#define MSR_CRITICAL_BITS ~MSR_SAFE_BITS 126#define MSR_CRITICAL_BITS ~MSR_SAFE_BITS
127 127
128.global kvm_emulate_mtmsr 128.global kvm_emulate_mtmsr