Re: [kvm-devel] [PATCH 2/3] KVM: in-kernel-apic modification to QEMU

2007-05-09 Thread Dor Laor
> qemu/hw/apic.c | 17 - > qemu/hw/pc.c| 11 +++ > qemu/qemu-kvm.c | 12 +--- > user/kvmctl.c | 25 +++-- > user/kvmctl.h |5 +++-- > user/main.c |3 +-- > 6 files changed, 59 insertions(+), 14 deletions(-) > >diff --git a/q

[kvm-devel] Memory allocation on guest boot

2007-05-09 Thread Cyril Gouget
Hello Yeasterday, I noticed a strange behaviour on my WinXP guest (host is kubuntu 7.04). When the guest is launched, it is *VERY* slow. When looking at the task manager, the processor is used at 100%, doing quite noting. After having thought hardly, I arrrived to the conclusion that KVM itself

Re: [kvm-devel] Memory allocation on guest boot

2007-05-09 Thread Dor Laor
Hello Yeasterday, I noticed a strange behaviour on my WinXP guest (host is kubuntu 7.04). When the guest is launched, it is *VERY* slow. When looking at the task manager, the processor is used at 100%, doing quite noting. Note that the guest's cpu consumption is never accurate using virtualizati

Re: [kvm-devel] [PATCH 1/8] KVM: Adds support for in-kernel mmiohandlers

2007-05-09 Thread Dor Laor
>+static inline void kvm_iodevice_read(struct kvm_io_device *dev, >+ gpa_t addr, >+ int len, >+ void *val) >+{ >+ dev->read(dev, addr, len, val); >+} >+ >+static inline void kvm_iodevice_write

Re: [kvm-devel] [PATCH 2/3] KVM: in-kernel-apic modification to QEMU

2007-05-09 Thread Gregory Haskins
>>> On Wed, May 9, 2007 at 4:16 AM, in message <[EMAIL PROTECTED]>, "Dor Laor" <[EMAIL PROTECTED]> wrote: > For having the option of using kvm with qemu- apic you can use the > apic_level variable below and add it to qemu's configuration params. > This will be valuable while testing your impleme

[kvm-devel] [PATCH 0/9] in-kernel APIC v2

2007-05-09 Thread Gregory Haskins
This release fixes two critical issues: 1) Performance was bad in previous versions (QEMU would stay at 80% + even when the guest was idle). Root cause was a latent KVM bug that was not exposed with the original interrupt model. Namely, interrupts were not checked during light-exit (see

[kvm-devel] [PATCH 2/9] KVM: VMX - fix interrupt checking on light-exit

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c index 19edb34..c701ead 100644 --- a/drivers/kvm/vmx.c +++ b/drivers/kvm/vmx.c @@ -1855,9 +1855,6 @@ preempte

[kvm-devel] [PATCH 1/9] KVM: Adds support for in-kernel mmio handlers

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h | 60 +++ drivers/kvm/kvm_main.c | 94 ++-- 2 files changed, 142 insertions(+), 12 deletions(-) diff --git a/drivers/kvm/kvm.h b/drivers/kvm/k

[kvm-devel] [PATCH 5/9] KVM: Adds ability to signal userspace using a file-descriptor

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |2 + drivers/kvm/kvm_main.c | 82 2 files changed, 84 insertions(+), 0 deletions(-) diff --git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h index 0f6cc32..b5bfc91 1006

[kvm-devel] [PATCH 6/9] KVM: Add support for in-kernel LAPIC model

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/Makefile |2 drivers/kvm/kernint.c | 149 + drivers/kvm/kvm.h | 35 + drivers/kvm/kvm_main.c | 179 +- drivers/kvm/lapic.c| 1412 drivers/kvm/svm.c

[kvm-devel] [PATCH 3/9] KVM: Add irqdevice object

2007-05-09 Thread Gregory Haskins
The current code is geared towards using a user-mode (A)PIC. This patch adds an "irqdevice" abstraction, and implements a "userint" model to handle the duties of the original code. Later, we can develop other irqdevice models to handle objects like LAPIC, IOAPIC, i8259, etc, as appropriate Signe

[kvm-devel] [PATCH 7/9] KVM: Adds support for real NMI injection on VMX processors

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 63 + drivers/kvm/vmx.h |3 +++ 2 files changed, 61 insertions(+), 5 deletions(-) diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c index 2b4a9ac..d99 100644

[kvm-devel] [PATCH 8/9] KVM: Adds basic plumbing to support TPR shadow features

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/irqdevice.h |3 +++ drivers/kvm/kvm.h |1 + drivers/kvm/lapic.c | 15 +++ 3 files changed, 19 insertions(+), 0 deletions(-) diff --git a/drivers/kvm/irqdevice.h b/drivers/kvm/irqdevice.h index 097d

[kvm-devel] [PATCH 9/9] KVM: Adds support for TPR shadowing under VMX processors

2007-05-09 Thread Gregory Haskins
Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 32 ++-- 1 files changed, 26 insertions(+), 6 deletions(-) diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c index d99..470494e 100644 --- a/drivers/kvm/vmx.c +++ b/drivers/kvm/vmx.c @@

[kvm-devel] [PATCH 4/9] KVM: Adds ability to preempt an executing VCPU

2007-05-09 Thread Gregory Haskins
The VCPU executes synchronously w.r.t. userspace today, and therefore interrupt injection is pretty straight forward. However, we will soon need to be able to inject interrupts asynchronous to the execution of the VCPU due to the introduction of SMP, paravirtualized drivers, and asynchronous hyper

Re: [kvm-devel] [PATCH 2/8] KVM: Add irqdevice object

2007-05-09 Thread Dor Laor
>-static inline void kvm_do_inject_irq(struct kvm_vcpu *vcpu) >-{ >- struct vmcb_control_area *control; >- >- control = &vcpu->svm->vmcb->control; >- control->int_vector = pop_irq(vcpu); >- control->int_ctl &= ~V_INTR_PRIO_MASK; >- control->int_ctl |= V_IRQ_MASK | >-

Re: [kvm-devel] Memory allocation on guest boot

2007-05-09 Thread Cyril Gouget
For your information if another dummy people report my strange behaviour: the solution was the loading kvm and kvm-amd modules... Sorry Bye Cyril On 5/9/07, Dor Laor <[EMAIL PROTECTED]> wrote: Hello Yeasterday, I noticed a strange behaviour on my WinXP guest (host is kubuntu 7.04). When

Re: [kvm-devel] [PATCH 2/8] KVM: Add irqdevice object

2007-05-09 Thread Gregory Haskins
>>> On Wed, May 9, 2007 at 11:16 AM, in message <[EMAIL PROTECTED]>, "Dor Laor" <[EMAIL PROTECTED]> wrote: > >>- static inline void kvm_do_inject_irq(struct kvm_vcpu *vcpu) >>-{ >>- struct vmcb_control_area *control; >>- >>- control = &vcpu- >svm- >vmcb- >control; >>- control- >int_v

Re: [kvm-devel] [PATCH 2/8] KVM: Add irqdevice object

2007-05-09 Thread Dor Laor
>>>+static void do_interrupt_requests(struct kvm_vcpu *vcpu, >>>+ struct kvm_run *kvm_run) >>>+{ >>>+int pending = __kvm_vcpu_irq_all_pending(vcpu); >>>+ >>>+clear_pending_controls(vcpu); >>>+ >>>+while (pending) { >>>+kvm_irqpin_t pin = __fls(pe

Re: [kvm-devel] [PATCH 4/9] KVM: Adds ability to preempt an executingVCPU

2007-05-09 Thread Dor Laor
>-Original Message- >From: [EMAIL PROTECTED] [mailto:kvm-devel- >[EMAIL PROTECTED] On Behalf Of Gregory Haskins >Sent: Wednesday, May 09, 2007 6:19 PM >To: kvm-devel@lists.sourceforge.net >Subject: [kvm-devel] [PATCH 4/9] KVM: Adds ability to preempt an >executingVCPU > >The VCPU executes

Re: [kvm-devel] [PATCH 2/8] KVM: Add irqdevice object

2007-05-09 Thread Gregory Haskins
>>> On Wed, May 9, 2007 at 6:12 PM, in message <[EMAIL PROTECTED]>, "Dor Laor" <[EMAIL PROTECTED]> wrote: > > I wonder if VMX or SVM have an option of injecting several virq at once. VMX definitely does not (IIUC). I don't know enough about SVN to say for sure, but my gut tells me that its not

Re: [kvm-devel] [PATCH 4/9] KVM: Adds ability to preempt an executingVCPU

2007-05-09 Thread Gregory Haskins
>>> On Wed, May 9, 2007 at 6:28 PM, in message <[EMAIL PROTECTED]>, "Dor Laor" <[EMAIL PROTECTED]> wrote: > >>- Original Message- >>From: kvm- devel- [EMAIL PROTECTED] [mailto:kvm- devel- >>[EMAIL PROTECTED] On Behalf Of Gregory Haskins >>Sent: Wednesday, May 09, 2007 6:19 PM >>To: kvm-