Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Zhang, Xiantao
>> It shouldn't have any confilicts, since they belong to different >> archs. Currently, you know source code is placed at >> arch/{$arch}/kvm, and Makefile and Kconfig aslo there. >> So, it doesn't impact any issues, since ia64 and x86_64 are totally >> different archs. For example, you can defi

Re: [kvm-devel] keeping time

2007-12-26 Thread Dong, Eddie
Using PIT to get guest timer faster is a known issue for unmodified Linux of early version such as 2.6.9. that is why we introduced some extra complicated logic in Xen to try to fix it but not perfect. pv timer should fix this in future, and ntpd is also a good way. BTW, Yves's case, can u chec

Re: [kvm-devel] [PATCH 06/55] KVM: Per-architecture hypercall definitions

2007-12-26 Thread Avi Kivity
[copying Anthony, the original author] Pavel Machek wrote: > Hi! > > >> Currently kvm provides hypercalls only for x86* architectures. To >> provide hypercall infrastructure for other kvm architectures I split >> kvm_para.h into a generic header file and architecture specific >> definitions. >>

Re: [kvm-devel] keeping time

2007-12-26 Thread Yang, Sheng
On Thursday 27 December 2007 14:51:06 Yves Dorfsman wrote: > On Thu, 27 Dec 2007, Yang, Sheng wrote: > > What's your guest kernel version? > > 2.6.22 > > > When I debug my in kernel PIT(not sent yet, though kept for months), I > > found the kernel version have something to do with the timer accurac

Re: [kvm-devel] [PATCH 00/55] KVM patch queue review for 2.6.25 merge window (part II)

2007-12-26 Thread Avi Kivity
Sam Ravnborg wrote: > On Wed, Dec 26, 2007 at 01:05:05PM +0200, Avi Kivity wrote: > >> The second 2.6.25 kvm patch series, for your review. Three more to go. >> > > Hi Avi. > > A diffstat in your introduction mail would be nice so one does not > have to check 50+ patches to see if it touch

Re: [kvm-devel] keeping time

2007-12-26 Thread Yves Dorfsman
On Thu, 27 Dec 2007, Yang, Sheng wrote: > What's your guest kernel version? 2.6.22 > When I debug my in kernel PIT(not sent yet, though kept for months), I found > the kernel version have something to do with the timer accuracy. On my > limited test, the kernel 2.6.18, 2.6.20, 2.6.22 with defau

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Amit Shah
On Thursday 27 December 2007 08:00:49 Zhang, Xiantao wrote: > >> 4. Insert kvm.ko kvm-intel.ko to kernel. > > > > kvm-intel is the name of the module fox x86-intel. Do we have a > > collision here? Or is this supposed to load the x86 one on x86 and > > ia64 one on ia64? > > > > OK, I just saw your

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Zhang, Xiantao
>> 4. Insert kvm.ko kvm-intel.ko to kernel. > > kvm-intel is the name of the module fox x86-intel. Do we have a > collision here? Or is this supposed to load the x86 one on x86 and > ia64 one on ia64? > > OK, I just saw your patches for Kconfig and Makefiles and we use > CONFIG_KVM_INTEL for i

Re: [kvm-devel] keeping time

2007-12-26 Thread Yang, Sheng
On Wednesday 26 December 2007 22:35:29 Yves Dorfsman wrote: > What is the recommended way to keep the time correct on a UNIX KVM machine > ? > > I am using Linux x86_64 (gentoo) both as a host and as a guest, and can't > keep the time straight on the guest. Ntpd eventually gives up because the > cl

Re: [kvm-devel] NFS problems

2007-12-26 Thread Yves Dorfsman
On Wed, 26 Dec 2007, Yves Dorfsman wrote: > I was usign rtl8020 (I think), anyway, not ne2k. I am now using rtl8139 and > have the same problem. I am using the linux 8139too though, which I > understand is old, I am trying to replace it with the newer one 8139cp, but > have shoot myself in the

Re: [kvm-devel] [PATCH 00/55] KVM patch queue review for 2.6.25 merge window (part II)

2007-12-26 Thread Sam Ravnborg
On Wed, Dec 26, 2007 at 01:05:05PM +0200, Avi Kivity wrote: > The second 2.6.25 kvm patch series, for your review. Three more to go. Hi Avi. A diffstat in your introduction mail would be nice so one does not have to check 50+ patches to see if it touches any file I can give feedback on.

Re: [kvm-devel] [PATCH 06/55] KVM: Per-architecture hypercall definitions

2007-12-26 Thread Pavel Machek
Hi! > Currently kvm provides hypercalls only for x86* architectures. To > provide hypercall infrastructure for other kvm architectures I split > kvm_para.h into a generic header file and architecture specific > definitions. > > Signed-off-by: Christian Borntraeger <[EMAIL PROTECTED]> > Signed-off

Re: [kvm-devel] keeping time

2007-12-26 Thread Yves Dorfsman
On Wed, 26 Dec 2007, Izik Eidus wrote: > ohhh i forgat to mention to boot the linux without apic when you run the -tdf > (if i remember it is noapic) Yes I verified, "noapic". Now that's weird the clock is a little bit fast (as opposed to very slow previously). It got 7 second too fast, in

Re: [kvm-devel] NFS problems

2007-12-26 Thread Yves Dorfsman
On Wed, 26 Dec 2007, Avi Kivity wrote: > Yves Dorfsman wrote: >> >> This week I upgraded KVM to version 57. Everything looked like it worked, >> but I run into the following problem: after serving a few pages (< 20) the >> machine gets into 0% user, 0% idle 100% wait and apache stop serving an

Re: [kvm-devel] keeping time

2007-12-26 Thread Izik Eidus
Yves Dorfsman wrote: > On Wed, 26 Dec 2007, Avi Kivity wrote: > > >> ntp is too clever for virtual machines. What happens if you don't enable it? >> > > Same thing. > > >> Please provide the guest's /proc/interrupts. >> > > more /proc/interrupts > CPU0 >0: 270

Re: [kvm-devel] keeping time

2007-12-26 Thread Yves Dorfsman
On Wed, 26 Dec 2007, Avi Kivity wrote: > ntp is too clever for virtual machines. What happens if you don't enable it? Same thing. > > Please provide the guest's /proc/interrupts. more /proc/interrupts CPU0 0: 27066XT-PIC-XTtimer 1: 9XT-PIC-XT

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Amit Shah
On Wednesday 19 December 2007 17:52:01 Zhang, Xiantao wrote: > KVM/IA64 HOWTO > This is the notes about how to enalbe kvm on Itanium series of > processors > suppoting VT. Since fully userspace built is not supported yet, so we > have to > build qemu, and kernel module separately. > T

Re: [kvm-devel] keeping time

2007-12-26 Thread Avi Kivity
Yves Dorfsman wrote: > What is the recommended way to keep the time correct on a UNIX KVM machine ? > > I am using Linux x86_64 (gentoo) both as a host and as a guest, and can't > keep the time straight on the guest. Ntpd eventually gives up because the > clock is too wanky. > > ntp is too cl

Re: [kvm-devel] NFS problems

2007-12-26 Thread Avi Kivity
Yves Dorfsman wrote: > I built my virtual machines on KVM version 28 back in july. One of them > runs gentoo x86_64 (as guest) and a small web server with apache 2, > serving pages from an NFS directory. Never had a problem with it. > > This week I upgraded KVM to version 57. Everything looked li

Re: [kvm-devel] keeping time

2007-12-26 Thread Izik Eidus
Yves Dorfsman wrote: > What is the recommended way to keep the time correct on a UNIX KVM machine ? > what happen when you try: -no-kvm-irqchip -tdf ? (you arent runing it with -no-kvm-irqchip right now right?, if you dont it is probably bug) > I am using Linux x86_64 (gentoo) both as a host an

[kvm-devel] NFS problems

2007-12-26 Thread Yves Dorfsman
I built my virtual machines on KVM version 28 back in july. One of them runs gentoo x86_64 (as guest) and a small web server with apache 2, serving pages from an NFS directory. Never had a problem with it. This week I upgraded KVM to version 57. Everything looked like it worked, but I run into

[kvm-devel] keeping time

2007-12-26 Thread Yves Dorfsman
What is the recommended way to keep the time correct on a UNIX KVM machine ? I am using Linux x86_64 (gentoo) both as a host and as a guest, and can't keep the time straight on the guest. Ntpd eventually gives up because the clock is too wanky. I run into this problem both with versions 28 and

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Zhang, Xiantao
Akio Takebe wrote: > Hi, Xiantao > >> Akio Takebe wrote: >>> Hi, Xiantao >>> Akio Takebe wrote: > Hi, > >> Run guests with the command : >> /usr/local/bin/qemu-system-ia64 -hda your.img -m 512 >> >> If you have any question, please feel free to contact me! > Can

[kvm-devel] [PATCH 54/55] KVM: VMX: Consolidate register usage in vmx_vcpu_run()

2007-12-26 Thread Avi Kivity
We pass vcpu, vmx->fail, and vmx->launched to assembly code, but all three are fields within vmx. Consolidate by only passing in vmx and offsets for the rest. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 146 ++-- 1 files

[kvm-devel] [PATCH 53/55] KVM: Portability: move KVM_CHECK_EXTENSION

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Make KVM_CHECK_EXTENSION code into a function, all archs can define its capability independently. Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Acked-by: Carsten Otte <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.

[kvm-devel] [PATCH 47/55] KVM: Portability: Move some includes to x86.c

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Move some includes to x86.c from kvm_main.c, since the related functions have been moved to x86.c Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Acked-by: Carsten Otte <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_

[kvm-devel] [PATCH 48/55] KVM: Portability: Move kvm_x86_ops to x86.c

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Acked-by: Carsten Otte <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c |1 - drivers/kvm/x86.c |2 ++ drivers/kvm/x86.h |2 ++ 3 files change

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Akio Takebe
Hi, Xiantao >Akio Takebe wrote: >> Hi, Xiantao >> >>> Akio Takebe wrote: Hi, > Run guests with the command : > /usr/local/bin/qemu-system-ia64 -hda your.img -m 512 > > If you have any question, please feel free to contact me! Can I use the guest image of Xen?

[kvm-devel] [PATCH 34/55] KVM: Portability: Move x86 FPU handling to x86.c

2007-12-26 Thread Avi Kivity
From: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |3 + drivers/kvm/kvm_main.c | 107 +--- drivers/kvm/x86.c | 103 +

[kvm-devel] [PATCH 05/55] KVM: Split IOAPIC reset function and export for kernel RESET

2007-12-26 Thread Avi Kivity
From: Eddie Dong <[EMAIL PROTECTED]> Signed-off-by: Yaozu (Eddie) Dong <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/ioapic.c | 17 + drivers/kvm/irq.h|1 + 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/kvm/io

[kvm-devel] [PATCH 46/55] KVM: Change kvm_{read, write}_guest() to use copy_{from, to}_user()

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> This changes kvm_write_guest_page/kvm_read_guest_page to use copy_to_user/read_from_user, as a result we get better speed and better dirty bit tracking. Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kv

[kvm-devel] [PATCH 49/55] KVM: Portability: Add vcpu and hardware management arch hooks

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Add the following hooks: void decache_vcpus_on_cpu(int cpu); int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu); void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu); void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu); void kvm_arch_vcpu_load(struct kvm_vcpu *

[kvm-devel] [PATCH 35/55] KVM: Portability: Move x86 vcpu ioctl handlers to x86.c

2007-12-26 Thread Avi Kivity
From: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h | 10 + drivers/kvm/kvm_main.c | 442 +--- drivers/kvm/x86.c | 427 +

[kvm-devel] [PATCH 25/55] KVM: Portability: Move x86 emulation and mmio device hook to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves the following functions to from kvm_main.c to x86.c: emulator_read/write_std, vcpu_find_pervcpu_dev, vcpu_find_mmio_dev, emulator_read/write_emulated, emulator_write_phys, emulator_write_emulated_onepage, emulator_cmpxchg_emulated, get_setmen

[kvm-devel] [PATCH 51/55] KVM: Portability: Move x86 specific code from kvm_init() to kvm_arch()

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Acked-by: Carsten Otte <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |5 +++-- drivers/kvm/kvm_main.c | 26 ++ drivers/kvm/x86.c

[kvm-devel] [PATCH 50/55] KVM: Portability: Combine kvm_init and kvm_init_x86

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Will be called once arch module registers itself. Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Acked-by: Carsten Otte <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |4 +- drivers/kvm/kvm_main.c | 61

[kvm-devel] [PATCH 44/55] KVM: add kvm_is_error_hva()

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> Check for the "error hva", an address outside the user address space that signals a bad gfn. Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |1 + drivers/kvm/kvm_main.c | 11 +++

[kvm-devel] [PATCH 55/55] KVM: Portability: Make kvm_vcpu_ioctl_translate arch dependent

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> Move kvm_vcpu_ioctl_translate to arch, since mmu would be put under arch. Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |3 +++ drivers/kvm/kvm_main.c | 24 +-

[kvm-devel] [PATCH 26/55] KVM: Portability: Move pio emulation functions to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves implementation of the following functions from kvm_main.c to x86.c: free_pio_guest_pages, vcpu_find_pio_dev, pio_copy_data, complete_pio, kernel_pio, pio_string_write, kvm_emulate_pio, kvm_emulate_pio_string The function inject_gp, which was

[kvm-devel] [PATCH 52/55] KVM: x86 emulator: modify 'lods', and 'stos' not to depend on CR2

2007-12-26 Thread Avi Kivity
From: Sheng Yang <[EMAIL PROTECTED]> The current 'lods' and 'stos' is depending on incoming CR2 rather than decode memory address from registers. Signed-off-by: Sheng Yang <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c | 14 ++ 1 fil

[kvm-devel] [PATCH 20/55] KVM: Portability: move get/set_apic_base to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves the implementation of get_apic_base and set_apic_base from kvm_main.c to x86.c Signed-off-by: Carsten Otte <[EMAIL PROTECTED]> Reviewed-by: Christian Borntraeger <[EMAIL PROTECTED]> Acked-by: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-b

[kvm-devel] [PATCH 36/55] KVM: Add make_page_dirty() to kvm_clear_guest_page()

2007-12-26 Thread Avi Kivity
From: Dor Laor <[EMAIL PROTECTED]> Every write access to guest pages should be tracked. Signed-off-by: Dor Laor <[EMAIL PROTECTED]> Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c |1 + 1 files changed, 1 insertions(+), 0

[kvm-devel] [PATCH 21/55] KVM: Portability: Move control register helper functions to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves the definitions of CR0_RESERVED_BITS, CR4_RESERVED_BITS, and CR8_RESERVED_BITS along with the following functions from kvm_main.c to x86.c: set_cr0(), set_cr3(), set_cr4(), set_cr8(), get_cr8(), lmsw(), load_pdptrs() The static function wrapp

[kvm-devel] [PATCH 15/55] KVM: x86 emulator: don't depend on cr2 for mov abs emulation

2007-12-26 Thread Avi Kivity
The 'mov abs' instruction family (opcodes 0xa0 - 0xa3) still depends on cr2 provided by the page fault handler. This is wrong for several reasons: - if an instruction accessed misaligned data that crosses a page boundary, and if the fault happened on the second page, cr2 will point at the sec

[kvm-devel] [PATCH 18/55] KVM: Portability: Split kvm_vm_ioctl v3

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch splits kvm_vm_ioctl into archtecture independent parts, and x86 specific parts which go to kvm_arch_vcpu_ioctl in x86.c. The patch is unchanged since last submission. Common ioctls for all architectures are: KVM_CREATE_VCPU, KVM_GET_DIRTY_LOG, KVM

[kvm-devel] [PATCH 42/55] KVM: x86 emulator: remove 8 bytes operands emulator for call near instruction

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> it is removed beacuse it isnt supported on a real host Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c |3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/drivers

[kvm-devel] [PATCH 39/55] KVM: Fix faults during injection of real-mode interrupts

2007-12-26 Thread Avi Kivity
If vmx fails to inject a real-mode interrupt while fetching the interrupt redirection table, it fails to record this in the vectoring information field. So we detect this condition and do it ourselves. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 51 +++

[kvm-devel] [PATCH 40/55] KVM: VMX: Comment VMX primary/secondary exec ctl definitions

2007-12-26 Thread Avi Kivity
From: Eddie Dong <[EMAIL PROTECTED]> Add comments for secondary/primary Processor-Based VM-execution controls. Signed-off-by: Yaozu (Eddie) Dong <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/vmx.h | 10 -- 1 files changed, 8 insertions(+), 2 deletion

[kvm-devel] [PATCH 22/55] KVM: VMX: Enable memory mapped TPR shadow (FlexPriority)

2007-12-26 Thread Avi Kivity
From: Sheng Yang <[EMAIL PROTECTED]> This patch based on CR8/TPR patch, and enable the TPR shadow (FlexPriority) for 32bit Windows. Since TPR is accessed very frequently by 32bit Windows, especially SMP guest, with FlexPriority enabled, we saw significant performance gain. Signed-off-by: Sheng Y

[kvm-devel] [PATCH 45/55] KVM: introduce gfn_to_hva()

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> Convert a guest frame number to the corresponding host virtual address. Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c | 25 + 1 files changed, 17 insertions(+),

[kvm-devel] [PATCH 41/55] KVM: VMX: wbinvd exiting

2007-12-26 Thread Avi Kivity
From: Eddie Dong <[EMAIL PROTECTED]> Add wbinvd VM Exit support to prepare for pass-through device cache emulation and also enhance real time responsiveness. Signed-off-by: Yaozu (Eddie) Dong <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 11 +

[kvm-devel] [PATCH 31/55] KVM: x86 emulator: Hoist modrm and abs decoding into separate functions

2007-12-26 Thread Avi Kivity
Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c | 337 - 1 files changed, 177 insertions(+), 160 deletions(-) diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c index b352a6c..64888a6 100644 --- a/drivers/kvm

[kvm-devel] [PATCH 43/55] KVM: Simplify CPU_TASKS_FROZEN cpu notifier handling

2007-12-26 Thread Avi Kivity
Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c |4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c index 302473d..dacdc66 100644 --- a/drivers/kvm/kvm_main.c +++ b/drivers/kvm/kvm_main.c @@ -1335,21 +

[kvm-devel] [PATCH 33/55] KVM: Portability: Move x86 instruction emulation code to x86.c

2007-12-26 Thread Avi Kivity
From: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |1 + drivers/kvm/kvm_main.c | 177 +--- drivers/kvm/x86.c | 175 +

[kvm-devel] [PATCH 24/55] KVM: Portability: Move kvm_get/set_msr[_common] to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves the implementation of the functions of kvm_get/set_msr, kvm_get/set_msr_common, and set_efer from kvm_main.c to x86.c. The definition of EFER_RESERVED_BITS is moved too. Signed-off-by: Carsten Otte <[EMAIL PROTECTED]> Acked-by: Hollis Blanch

[kvm-devel] [PATCH 37/55] KVM: VMX: Use vmx to inject real-mode interrupts

2007-12-26 Thread Avi Kivity
Instead of injecting real-mode interrupts by writing the interrupt frame into guest memory, abuse vmx by injecting a software interrupt. We need to pretend the software interrupt instruction had a length > 0, so we have to adjust rip backward. This lets us not to mess with writing guest memory, w

[kvm-devel] [PATCH 32/55] KVM: Portability: Make exported debugfs data architecture-specific

2007-12-26 Thread Avi Kivity
From: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Hollis Blanchard <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |7 +++ drivers/kvm/kvm_main.c | 25 - drivers/kvm/x86.c | 22 ++ 3

[kvm-devel] [PATCH 28/55] KVM: x86 emulator: centralize decoding of one-byte register access insns

2007-12-26 Thread Avi Kivity
Instructions like 'inc reg' that have the register operand encoded in the opcode are currently specially decoded. Extend decode_register_operand() to handle that case, indicated by having DstReg or SrcReg without ModRM. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c

[kvm-devel] [PATCH 38/55] KVM: VMX: Read & store IDT_VECTORING_INFO_FIELD

2007-12-26 Thread Avi Kivity
We'll want to write to it in order to fix real-mode irq injection problems, but it is a read-only field. Storing it in a variable solves that issue. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/vmx.c | 17 - 1 files changed, 12 insertions(+), 5 deletions(-) di

[kvm-devel] [PATCH 30/55] KVM: Make mark_page_dirty() work for aliased pages too.

2007-12-26 Thread Avi Kivity
From: Uri Lublin <[EMAIL PROTECTED]> Recommended by Izik Eidus. Signed-off-by: Uri Lublin <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kv

[kvm-devel] [PATCH 17/55] KVM: MMU: Topup the mmu memory preallocation caches before emulating an insn

2007-12-26 Thread Avi Kivity
Emulation may cause a shadow pte to be instantiated, which requires memory resources. Make sure the caches are filled to avoid an oops. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/mmu.c |4 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/drivers/kvm/mmu.

[kvm-devel] [PATCH 19/55] KVM: Portability: Move memory segmentation to x86.c

2007-12-26 Thread Avi Kivity
From: Carsten Otte <[EMAIL PROTECTED]> This patch moves the definition of segment_descriptor_64 for AMD64 and EM64T from kvm_main.c to segment_descriptor.h. It also adds a proper #ifndef...#define...#endif around that header file. The implementation of segment_base is moved from kvm_main.c to x86.

[kvm-devel] [PATCH 29/55] KVM: Simplify decode_register_operand() calling convention

2007-12-26 Thread Avi Kivity
Now that rex_prefix is part of the decode cache, there is no need to pass it along. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c index

[kvm-devel] [PATCH 23/55] KVM: Fix gfn_to_page() acquiring mmap_sem twice

2007-12-26 Thread Avi Kivity
From: Anthony Liguori <[EMAIL PROTECTED]> KVM's nopage handler calls gfn_to_page() which acquires the mmap_sem when calling out to get_user_pages(). nopage handlers are already invoked with the mmap_sem held though. Introduce a __gfn_to_page() for use by the nopage handler which requires the loc

[kvm-devel] [PATCH 27/55] KVM: x86 emulator: Extract the common code of SrcReg and DstReg

2007-12-26 Thread Avi Kivity
Share the common parts of SrcReg and DstReg decoding. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/x86_emulate.c | 80 +--- 1 files changed, 31 insertions(+), 49 deletions(-) diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emula

[kvm-devel] [PATCH 16/55] KVM: Move page fault processing to common code

2007-12-26 Thread Avi Kivity
The code that dispatches the page fault and emulates if we failed to map is duplicated across vmx and svm. Merge it to simplify further bugfixing. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/mmu.c | 36 drivers/kvm/svm.c | 33 +--

[kvm-devel] [PATCH 12/55] KVM: VMX: Let gcc to choose which registers to save (i386)

2007-12-26 Thread Avi Kivity
From: Laurent Vivier <[EMAIL PROTECTED]> This patch lets GCC to determine which registers to save when we switch to/from a VCPU in the case of intel i386. * Original code saves following registers: eax, ebx, ecx, edx, edi, esi, ebp (using popa) * Patched code: - informs GCC that we modif

[kvm-devel] [PATCH 10/55] KVM: Add ioctl to tss address from userspace,

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> Currently kvm has a wart in that it requires three extra pages for use as a tss when emulating real mode on Intel. This patch moves the allocation internally, only requiring userspace to tell us where in the physical address space we can place the tss. Signed

[kvm-devel] [PATCH 03/55] KVM: Add a might_sleep() annotation to gfn_to_page()

2007-12-26 Thread Avi Kivity
This will help trap accesses to guest memory in atomic context. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm_main.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c index ff77175..005f2d5 100644 --- a/dr

[kvm-devel] [PATCH 09/55] KVM: Add kernel-internal memory slots

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> Reserve a few memory slots for kernel internal use. This is good for case you have to register memory region and you want to be sure it was not registered from userspace, and for case you want to register a memory region that won't be seen from userspace. Sig

[kvm-devel] [PATCH 13/55] KVM: SVM: Let gcc to choose which registers to save (x86_64)

2007-12-26 Thread Avi Kivity
From: Laurent Vivier <[EMAIL PROTECTED]> This patch lets GCC to determine which registers to save when we switch to/from a VCPU in the case of AMD x86_64. * Original code saves following registers: rbx, rcx, rdx, rsi, rdi, rbp, r8, r9, r10, r11, r12, r13, r14, r15 * Patched code: - i

[kvm-devel] [PATCH 08/55] KVM: Export memory slot allocation mechanism

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> Remove kvm memory slot allocation mechanism from the ioctl and put it to exported function. Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h |3 +++ drivers/kvm/kvm_main.c | 17 ++

[kvm-devel] [PATCH 11/55] KVM: VMX: Let gcc to choose which registers to save (x86_64)

2007-12-26 Thread Avi Kivity
From: Laurent Vivier <[EMAIL PROTECTED]> This patch lets GCC to determine which registers to save when we switch to/from a VCPU in the case of intel x86_64. * Original code saves following registers: rax, rbx, rcx, rdx, rsi, rdi, rbp, r8, r9, r10, r11, r12, r13, r14, r15 * Patched code:

[kvm-devel] [PATCH 14/55] KVM: SVM: Let gcc to choose which registers to save (i386)

2007-12-26 Thread Avi Kivity
From: Laurent Vivier <[EMAIL PROTECTED]> This patch lets GCC to determine which registers to save when we switch to/from a VCPU in the case of AMD i386 * Original code saves following registers: ebx, ecx, edx, esi, edi, ebp * Patched code: - informs GCC that we modify following registers

[kvm-devel] [PATCH 00/55] KVM patch queue review for 2.6.25 merge window (part II)

2007-12-26 Thread Avi Kivity
The second 2.6.25 kvm patch series, for your review. Three more to go. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/0

[kvm-devel] [PATCH 07/55] KVM: Unmap kernel-allocated memory on slot destruction

2007-12-26 Thread Avi Kivity
From: Izik Eidus <[EMAIL PROTECTED]> kvm_vm_ioctl_set_memory_region() is able to remove memory in addition to adding it. Therefore when using kernel swapping support for old userspaces, we need to munmap the memory if the user request to remove it Signed-off-by: Izik Eidus <[EMAIL PROTECTED]> Si

[kvm-devel] [PATCH 06/55] KVM: Per-architecture hypercall definitions

2007-12-26 Thread Avi Kivity
From: Christian Borntraeger <[EMAIL PROTECTED]> Currently kvm provides hypercalls only for x86* architectures. To provide hypercall infrastructure for other kvm architectures I split kvm_para.h into a generic header file and architecture specific definitions. Signed-off-by: Christian Borntraeger

[kvm-devel] [PATCH 01/55] KVM: Portability: Split kvm_vcpu into arch dependent and independent parts (part 1)

2007-12-26 Thread Avi Kivity
From: Zhang Xiantao <[EMAIL PROTECTED]> First step to split kvm_vcpu. Currently, we just use an macro to define the common fields in kvm_vcpu for all archs, and all archs need to define its own kvm_vcpu struct. Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PR

[kvm-devel] [PATCH 04/55] KVM: Export PIC reset for kernel device reset

2007-12-26 Thread Avi Kivity
From: Eddie Dong <[EMAIL PROTECTED]> Signed-off-by: Yaozu (Eddie) Dong <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/i8259.c |6 ++ drivers/kvm/irq.h |1 + 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/kvm/i8259.c b/driver

[kvm-devel] [PATCH 02/55] KVM: Move vmx_vcpu_reset() out of vmx_vcpu_setup()

2007-12-26 Thread Avi Kivity
Split guest reset code out of vmx_vcpu_setup(). Besides being cleaner, this moves the realmode tss setup (which can sleep) outside vmx_vcpu_setup() (which is executed with preemption enabled). [izik: remove unused variable] Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h

Re: [kvm-devel] [PATCH] kvm/qemu: Fix ia64 build broken.

2007-12-26 Thread Zhang, Xiantao
Akio Takebe wrote: > Hi, Xiantao > >> diff --git a/qemu/target-ia64/cpu.h b/qemu/target-ia64/cpu.h index >> be409c7..2d91cb9 100644 --- a/qemu/target-ia64/cpu.h >> +++ b/qemu/target-ia64/cpu.h >> @@ -30,11 +30,11 @@ >> >> #define TARGET_LONG_BITS 64 >> >> - >> -#define TARGET_PAGE_BITS 14 >> +#d

Re: [kvm-devel] [PATCH] kvm/qemu: Fix ia64 build broken.

2007-12-26 Thread Akio Takebe
Hi, Xiantao >diff --git a/qemu/target-ia64/cpu.h b/qemu/target-ia64/cpu.h >index be409c7..2d91cb9 100644 >--- a/qemu/target-ia64/cpu.h >+++ b/qemu/target-ia64/cpu.h >@@ -30,11 +30,11 @@ > > #define TARGET_LONG_BITS 64 > >- >-#define TARGET_PAGE_BITS 14 >+#define TARGET_PAGE_BITS 16 > Do we need

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Zhang, Xiantao
Akio Takebe wrote: > Hi, Xiantao > >> Akio Takebe wrote: >>> Hi, >>> Run guests with the command : /usr/local/bin/qemu-system-ia64 -hda your.img -m 512 If you have any question, please feel free to contact me! >>> Can I use the guest image of Xen? >>> Or do I need to clean-in

Re: [kvm-devel] README: How to run kvm guests on IA64

2007-12-26 Thread Akio Takebe
Hi, Xiantao >Akio Takebe wrote: >> Hi, >> >>> Run guests with the command : >>> /usr/local/bin/qemu-system-ia64 -hda your.img -m 512 >>> >>> If you have any question, please feel free to contact me! >> Can I use the guest image of Xen? >> Or do I need to clean-install Linux or Windows on KVM gue