[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/15] kvm: x86: Synchronize PAT MSR with the kernel
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 09/15] kvm: x86: Synchronize PAT MSR with the kernel |
Date: |
Fri, 4 Mar 2011 11:20:06 +0100 |
Signed-off-by: Jan Kiszka <address@hidden>
---
target-i386/kvm.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 6efa491..bfc8d66 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -861,6 +861,7 @@ static int kvm_put_msrs(CPUState *env, int level)
kvm_msr_entry_set(&msrs[n++], MSR_IA32_SYSENTER_CS, env->sysenter_cs);
kvm_msr_entry_set(&msrs[n++], MSR_IA32_SYSENTER_ESP, env->sysenter_esp);
kvm_msr_entry_set(&msrs[n++], MSR_IA32_SYSENTER_EIP, env->sysenter_eip);
+ kvm_msr_entry_set(&msrs[n++], MSR_PAT, env->pat);
if (has_msr_star) {
kvm_msr_entry_set(&msrs[n++], MSR_STAR, env->star);
}
@@ -1113,6 +1114,7 @@ static int kvm_get_msrs(CPUState *env)
msrs[n++].index = MSR_IA32_SYSENTER_CS;
msrs[n++].index = MSR_IA32_SYSENTER_ESP;
msrs[n++].index = MSR_IA32_SYSENTER_EIP;
+ msrs[n++].index = MSR_PAT;
if (has_msr_star) {
msrs[n++].index = MSR_STAR;
}
@@ -1168,6 +1170,9 @@ static int kvm_get_msrs(CPUState *env)
case MSR_IA32_SYSENTER_EIP:
env->sysenter_eip = msrs[i].data;
break;
+ case MSR_PAT:
+ env->pat = msrs[i].data;
+ break;
case MSR_STAR:
env->star = msrs[i].data;
break;
--
1.7.1
[Qemu-devel] [PATCH 01/15] Break up user and system cpu_interrupt implementations, Jan Kiszka, 2011/03/04
[Qemu-devel] [PATCH 11/15] kvm: Rework inner loop of kvm_cpu_exec, Jan Kiszka, 2011/03/04
[Qemu-devel] [PATCH 04/15] kvm: Add in-kernel irqchip awareness to cpu_thread_is_idle, Jan Kiszka, 2011/03/04
[Qemu-devel] [PATCH 09/15] kvm: x86: Synchronize PAT MSR with the kernel,
Jan Kiszka <=
[Qemu-devel] [PATCH 02/15] Redirect cpu_interrupt to callback handler, Jan Kiszka, 2011/03/04