Skip to contentSkip to conversation

kvm clock - userspace with patches

PATCH In review Glauber de Oliveira Costa 2 participants 4 messages Jan 15, 2008 – Jan 20, 2008 3 messages not in the archive KVM

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): 12004098521016-git-send-email-gcosta-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org

#2 lore raw

PATCH 1/2 include kvm_para.h

have qemu-kvm to include kvm_para, allowing access to paravirt definitions

---
 qemu/qemu-kvm-x86.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
qemu/qemu-kvm-x86.c +1 -0
index c79ca36..21ec112 100644
@@ -14,6 +14,7 @@ extern int kvm_irqchip;
 #include <libkvm.h>
 #include <pthread.h>
 #include <sys/utsname.h>
+#include <linux/kvm_para.h>
 
 #define MSR_IA32_TSC		0x10
 
Signature · 7 lines
1.5.0.6


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

A message that is not in the archive (sent off-list or not yet received): 12004098602108-git-send-email-gcosta-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org

#4 lore raw

PATCH 2/2 fill cpuid with clocksource information

In this patch, we probe the host checking for clocksource capabilities. In case it is found, it is advertised to the guest through the appropriate cpuid mechanism

---
 qemu/qemu-kvm-x86.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
qemu/qemu-kvm-x86.c +6 -1
index 21ec112..6b11f02 100644
@@ -517,6 +517,11 @@ int kvm_arch_qemu_init_env(CPUState *cenv)
     int cpuid_nent = 0;
     CPUState copy;
     uint32_t i, limit;
+    int clocksource_feature = 0;
+#ifdef KVM_CAP_CLOCKSOURCE
+    clocksource_feature = kvm_check_extension(kvm_context, KVM_CAP_CLOCKSOURCE);
+    clocksource_feature <<= KVM_FEATURE_CLOCKSOURCE; 
+#endif
 
     copy = *cenv;
 
@@ -534,7 +539,7 @@ int kvm_arch_qemu_init_env(CPUState *cenv)
     pv_ent = &cpuid_ent[cpuid_nent++];
     memset(pv_ent, 0, sizeof(*pv_ent));
     pv_ent->function = KVM_CPUID_FEATURES;
-    pv_ent->eax = 0;
+    pv_ent->eax = clocksource_feature;
 #endif
 
     copy.regs[R_EAX] = 0;
Signature · 7 lines
1.5.0.6


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

A message that is not in the archive (sent off-list or not yet received): 1200409866869-git-send-email-gcosta-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org

#6 lore raw

Re: [PATCH 2/2] fill cpuid with clocksource information

Quoted 14 lines · Glauber de Oliveira Costa

In this patch, we probe the host checking for clocksource capabilities. In case it is found, it is advertised to the guest through the appropriate cpuid mechanism

---
 qemu/qemu-kvm-x86.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
qemu/qemu-kvm-x86.c +0 -0
index 21ec112..6b11f02 100644

qemu/qemu-kvm-x86.c int kvm_arch_qemu_init_env(CPUState *cenv) · line 525

Quoted 9 lines
qemu/qemu-kvm-x86.c +5 -0
@@ -517,6 +517,11 @@ int kvm_arch_qemu_init_env(CPUState *cenv)
     int cpuid_nent = 0;
     CPUState copy;
     uint32_t i, limit;
+    int clocksource_feature = 0;
+#ifdef KVM_CAP_CLOCKSOURCE
+    clocksource_feature = kvm_check_extension(kvm_context, KVM_CAP_CLOCKSOURCE);
+    clocksource_feature <<= KVM_FEATURE_CLOCKSOURCE; 
+#endif
 

There is no reason to be tricky here.

Signature · 7 lines
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/