Re: [kvm-devel] [PATCH] KVM PV Guest: Implement paravirtualized DMA

2008-04-29 Thread Andi Kleen
Amit Shah <[EMAIL PROTECTED]> writes: > + > +static struct page *page; > +static unsigned long page_gfn; Bad variable names > + > +const struct dma_mapping_ops *orig_dma_ops; I suspect real dma ops stacking will need some further thought than your simple hacks > + > + match = find_matching_pt

Re: [kvm-devel] [PATCH] x86 DMA: Handle devices assigned to the guest by the host

2008-04-29 Thread Andi Kleen
Amit Shah <[EMAIL PROTECTED]> writes: > diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c > index 388b113..678cafb 100644 > --- a/arch/x86/kernel/pci-dma.c > +++ b/arch/x86/kernel/pci-dma.c > @@ -443,6 +443,17 @@ dma_alloc_coherent(struct device *dev, size_t size, > dma_addr_t *dm

Re: [kvm-devel] PV DMA for PCI passthrough devices for KVM

2008-04-29 Thread Andi Kleen
Amit Shah <[EMAIL PROTECTED]> writes: > This patchset implements PVDMA for handling DMA requests from > devices assigned to the guest from the host machine. You forgot to post a high level design overview of how this works, what it is good for, what are the design trade offs etc.? Include that

Re: [kvm-devel] [PATCH]: Fix MSR_K7_EVNTSEL{0,3} for SVM

2008-04-28 Thread Andi Kleen
Chris Lalancette <[EMAIL PROTECTED]> writes: > this allows my RHEL-4 guest to successfully boot, although obviously the NMI > watchdog which it thinks it set up is not actually working. That's fine. On a virtualized environment you don't really need a NMI watchdog because you can always debug from

Re: [kvm-devel] Moving kvm lists to kernel.org?

2008-04-24 Thread Andi Kleen
David Miller <[EMAIL PROTECTED]> writes: > I'm fine with adding the list, but we don't do mass subscribes like > that, and this rule applies to every list which moves to vger from > somewhere else. > > People will need to subscribe themselves to the new list. Can someone please resubscribe gmane

Re: [kvm-devel] [PATCH] KVM: MMU: Fix rmap_remove() race

2008-03-27 Thread Andi Kleen
Avi Kivity <[EMAIL PROTECTED]> writes: (thought i sent a reply before, but i don't see it now. sorry if you see it twice) > Andrea notes that freeing the page before flushing the tlb is a race, as the > guest can sneak in one last write before the tlb is flushed, writing to a > page that may belo

Re: [kvm-devel] loop in copy_user_generic_string

2008-03-12 Thread Andi Kleen
> Argh - being stupid here - it looks like these 'working' kernels were > not SMP actually. > As long as the SMP is used - I still get the busy loop :( > Now being clueless Sorry don't have the cycles to look into your problem, but the standard procedure for hard problems that can be reproduc

Re: [kvm-devel] loop in copy_user_generic_string

2008-03-04 Thread Andi Kleen
Avi Kivity <[EMAIL PROTECTED]> writes: > > Most likely movs emulation is broken for long counts. Please post a > disassembly of copy_user_generic_string to make sure we're looking at > the same code. Be careful -- this code is patched at runtime and what you see in the vmlinux is not necessari

Re: [kvm-devel] [PATCH] enable gfxboot on VMX

2008-02-18 Thread Andi Kleen
Alexander Graf <[EMAIL PROTECTED]> writes: > > As everything except gfxboot works, we can simply change gfxboot in > runtime to use a different value. Unfortunately the mov instruction, > used to read the SS register is only 2 bytes long, so there is no way to > binary patch the mov to something th

Re: [kvm-devel] Performance monitoring units and KVM II

2008-01-30 Thread Andi Kleen
> Sure it could, but that would be a new interface. If you were > free to define a new interface you could also just go completely > hypercall based. Actually thinking about it more it would be probably possible for KVM to emulate ArchPerfMon on AMD and Family 15 Intel based on the local PMU.

Re: [kvm-devel] Performance monitoring units and KVM

2008-01-30 Thread Andi Kleen
On Thu, Jan 31, 2008 at 12:44:10AM +0530, Balaji Rao wrote: > On Wednesday 30 January 2008 11:56:25 pm Andi Kleen wrote: > > There is no really an architectural PMU if you consider > > boxes beyond relatively new Intel CPUs (which got one) > > > But since kvm runs only on

Re: [kvm-devel] Performance monitoring units and KVM

2008-01-30 Thread Andi Kleen
> Balaji Rao wrote: >> On Wednesday 30 January 2008 11:11:51 pm Avi Kivity wrote: >> >>> Markus Armbruster wrote: >>> System-wide profiling of the *virtual* machine is related to profiling just a process. That's hard. I guess building on Perfmon2 would make sense there, bu

Re: [kvm-devel] Performance monitoring units and KVM

2008-01-30 Thread Andi Kleen
> Is there really a requirement to profile several userspace programs, on > several guests, simultaneously? Since guests affect each others performance (e.g. one guest can push the data of another guest out of cache) profiling over guests makes a lot of sense. Otherwise you cannot easily diagno

Re: [kvm-devel] KVM oops in svm_vcpu_run with 2.6.24-rc7

2008-01-23 Thread Andi Kleen
On Wednesday 23 January 2008 12:28:06 Avi Kivity wrote: > Andi Kleen wrote: > > While starting a kernel > > > > Unable to handle kernel NULL pointer dereference at 0008 RIP: > > [] :kvm_amd:svm_vcpu_run+0x35/0x30d > > Can you disassemble svm_vcpu_run()

[kvm-devel] KVM oops in svm_vcpu_run with 2.6.24-rc7

2008-01-22 Thread Andi Kleen
While starting a kernel Unable to handle kernel NULL pointer dereference at 0008 RIP: [] :kvm_amd:svm_vcpu_run+0x35/0x30d PGD 471e1067 PUD 54ca9067 PMD 0 Oops: [1] SMP last sysfs file: /devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT1/cha rge_full_design CPU 0 Mo

Re: [kvm-devel] [RFC] fix VMX TSC synchronicity

2008-01-19 Thread Andi Kleen
Avi Kivity writes: > Thanks; that's reassuring to know that it will work (at least on Intel). Actually there are modern Intel systems which still have instable TSCs; e.g. IBM Summit multi node systems and some others. So you should still handle that case. -Andi -

Re: [kvm-devel] [RFC] fix VMX TSC synchronicity

2008-01-17 Thread Andi Kleen
> And turning of the TSC bit (for 32-bit guests). Turning off the TSC bit will break 64bit Linux (it checks if the cpuid bits have minimum supported features) and you don't know in advantage if a guest is 32bit or not. Ok there is a special BIOS call that the kernel issues to tell the BIOS that

Re: [kvm-devel] [RFC] fix VMX TSC synchronicity

2008-01-16 Thread Andi Kleen
On Wed, Jan 16, 2008 at 03:38:45PM +0200, Avi Kivity wrote: > Andi Kleen wrote: > >Linux checks a couple of things: e.g. if there are no deep C states > >and if there are no clustered nodes in the APIC etc. > > > >It might be reasonable to check the clock source of th

Re: [kvm-devel] [RFC] fix VMX TSC synchronicity

2008-01-16 Thread Andi Kleen
On Wed, Jan 16, 2008 at 10:46:11AM +0200, Avi Kivity wrote: > [fixing gmane emails, urgfhsz] > > Andi Kleen wrote: > >Avi Kivity writes: > > > > > >>Thanks; that's reassuring to know that it will work (at least on Intel). > >> > > >

Re: [kvm-devel] kvm-59 doesn't work

2008-01-15 Thread Andi Kleen
On Tue, Jan 15, 2008 at 12:56:52PM +0200, Avi Kivity wrote: > Andi Kleen wrote: > >FWIW it seems things are broken even without -kernel in -59 too. If I try > >to boot an existing image with just -hda ... the VGA screen just stays > >black while the process runs at 99% CPU. Ag

Re: [kvm-devel] kvm-59 doesn't work II

2008-01-13 Thread Andi Kleen
... and eventually it oopsed: Unable to handle kernel NULL pointer dereference at RIP: [] :kvm:x86_emulate_memop+0x2c62/0x4527 PGD 11c8ae067 PUD 0 Oops: 0002 [1] SMP CPU 0 Modules linked in: xfrm_user xfrm4_tunnel af_key xfs kvm_intel kvm usblp deflate zlib_deflate zlib_inf

Re: [kvm-devel] kvm-59 doesn't work

2008-01-13 Thread Andi Kleen
FWIW it seems things are broken even without -kernel in -59 too. If I try to boot an existing image with just -hda ... the VGA screen just stays black while the process runs at 99% CPU. Again with -49 it works fine. -Andi -

Re: [kvm-devel] kvm-59 doesn't work

2008-01-13 Thread Andi Kleen
> Are you using the modules that come with kvm or from an upstream kernel? > (which?) kvm from 2.6.24-rc5-gitXXX upstream kernels (see my original mail) -Andi - Check out the new SourceForge.net Marketplace. It's the best

Re: [kvm-devel] kvm-59 doesn't work

2008-01-13 Thread Andi Kleen
> If you are using a guest with more than 3.75GB or so. The load_kernel > function uses phys_ram_base + addr and that assumption is violated in > KVM with guests > ~3.75GB of memory. We either need to allocate memory > for the hole and never touch it or change load_kernel to use > cpu_physica

[kvm-devel] kvm-59 doesn't work

2008-01-13 Thread Andi Kleen
When I try my 64bit kernel with -kernel ... on kvm-59 I get before the kernel outputs anything: exception 13 (0) rax rbx rcx rdx 0600 rsi rdi rsp rbp r8 00

[kvm-devel] [PATCH] Fix compilation of kvm-59 with older kernel includes

2008-01-13 Thread Andi Kleen
I needed the following patch to make kvm-59 compile on SUSE 10.2. Yes it's a bug in the standard includes. -Andi diff -u kvm-59/qemu/usb-linux.c-o kvm-59/qemu/usb-linux.c --- kvm-59/qemu/usb-linux.c-o 2008-01-01 10:20:24.0 +0100 +++ kvm-59/qemu/usb-linux.c 2008-01-13 17:16:46.0

Re: [kvm-devel] [PATCH 24/24] make vsmp a paravirt client

2007-11-13 Thread Andi Kleen
> If vsmp is selected, PARAVIRT will be too, and the interrupt code will > be patched. > the vsmp option triggers a select statement. > > the ifdef only exists because, as I said, the code itself will be always > compiled in, to avoid an ifdef in setup_64.c. So it's just a taking it > from here,

Re: [kvm-devel] [PATCH 24/24] make vsmp a paravirt client

2007-11-13 Thread Andi Kleen
> The vsmp_64.c file is now compiled unconditionally, according to which > me and kiran agreed to. The detection code is always run, but will only > trigger when a suitable box is found. Accordingly, the paravirt structs > are only touched when PARAVIRT is on. Otherwise, we don't even have the > s

Re: [kvm-devel] [PATCH 24/24] make vsmp a paravirt client

2007-11-11 Thread Andi Kleen
On Fri, Nov 09, 2007 at 04:43:05PM -0200, Glauber de Oliveira Costa wrote: > This patch makes vsmp a paravirt client. It now uses the whole > infrastructure provided by pvops. When we detect we're running > a vsmp box, we change the irq-related paravirt operations (and so, > it have to happen quite

Re: [kvm-devel] mmu.c:307 BUG with kvm-48

2007-10-29 Thread Andi Kleen
On Mon, Oct 29, 2007 at 12:42:16PM +0200, Izik Eidus wrote: > On Mon, 2007-10-29 at 11:31 +0100, Andi Kleen wrote: > > FYI, > > > > I got this BUG while playing around with some guests with kvm-48 > > on a Core2 system. Base kernel was 2.6.23+ff patches > > (t

[kvm-devel] mmu.c:307 BUG with kvm-48

2007-10-29 Thread Andi Kleen
FYI, I got this BUG while playing around with some guests with kvm-48 on a Core2 system. Base kernel was 2.6.23+ff patches (that is why you see the LBR output; BTW that makes KVM complain too when it happens in a guest) . Haven't looked at it closely. -Andi [ cut here ]

[kvm-devel] wbinvd

2007-10-26 Thread Andi Kleen
[no direct reply because gmane still breaks it] WBINVD or CLFLUSH is also needed to safely change caching attributes of pages that are already mapped. Since CLFLUSH is somewhat hard to use for this near all Linux kernels use WBINVD for this. Examples where this happens are ioremap() using PAT,

Re: [kvm-devel] [PATCH 0/5] Split the emulator: decode & execute

2007-08-31 Thread Andi Kleen
On Wednesday 29 August 2007 18:39:45 Laurent Vivier wrote: > These patches split the emulator in two parts: one to decode the instruction, > the other to execute it. The decode part is then called only when needed. Is the same change done to the Xen version? It might be better to make it easier to

Re: [kvm-devel] [RFC] 9p Virtualization Transports

2007-08-31 Thread Andi Kleen
On Tuesday 28 August 2007 20:52:36 Eric Van Hensbergen wrote: > This patch set contains a set of virtualization transports for the 9p file > system intended to provide a mechanism for guests to access a portion of the > hosts name space without having to go through a virtualized network. It migh

Re: [kvm-devel] [kvm-commits] KVM: VMX: Use shadow TPR/cr8 for 64-bits guests

2007-08-23 Thread Andi Kleen
> I remember when I added something similar to the lapic series that both > of my C2D systems (Merom + Woodcrest) reported that they didn't support > the feature in the HW. Since those were fairly new, which ones *do* > support this (out of curiosity), or is there a microcode update floating > aro

Re: [kvm-devel] [Qemu-devel] [PATCH 3/4] Add support for HPET periodic timer.

2007-08-22 Thread Andi Kleen
> $ dmesg |grep -i hpet > ACPI: HPET 7D5B6AE0, 0038 (r1 A M I OEMHPET 5000708 MSFT 97) > ACPI: HPET id: 0x8086a301 base: 0xfed0 > hpet0: at MMIO 0xfed0, IRQs 2, 8, 0, 0 > hpet0: 4 64-bit timers, 14318180 Hz > hpet_resources: 0xfed0 is busy What kernel version was that? There w

Re: [kvm-devel] [Qemu-devel] [PATCH 3/4] Add support for HPET periodic timer.

2007-08-22 Thread Andi Kleen
On Wed, Aug 22, 2007 at 10:03:32AM +0300, Avi Kivity wrote: > Maybe the kernel is using the timer, so userspace can't. Just a guess. HPET has multiple timers (variable, but typically 2 or 4). The kernel only uses timer 0. It's possible someone else in user space is using it though. Try lsof /dev/

Re: [kvm-devel] [PATCH 2/3] i386: use x86_64's desc_def.h

2007-07-18 Thread Andi Kleen
On Thu, Jul 19, 2007 at 09:27:41AM +1000, Rusty Russell wrote: > On Wed, 2007-07-18 at 09:19 -0700, Zachary Amsden wrote: > > > +#define GET_CONTENTS(desc) (((desc)->raw32.b >> 10) & 3) > > > +#define GET_WRITABLE(desc) (((desc)->raw32.b >> 9) & 1) > > > > You got rid of the duplicate

Re: [kvm-devel] [PATCH] i386: Decouple PAE from CONFIG_CMPXCHG64

2007-07-18 Thread Andi Kleen
On Wed, Jul 18, 2007 at 07:34:47PM +0300, Avi Kivity wrote: > Commit 9d9bbd4d247a674deb43565582151acdc22e90d1 makes CONFIG_CMPXCHG64 > dependent on CONFIG_HIGHMEM64G, but KVM guest SMP support now also > requires CMPXCHG64 while not being tied to PAE. So the effect of that patch > is to disable KV

Re: [kvm-devel] [PATCH 1/3] Standardize x86_64's desc_defs.h in preparation for exposure to i386.

2007-07-18 Thread Andi Kleen
On Wed, Jul 18, 2007 at 05:22:34PM +1000, Rusty Russell wrote: > However, the currently (i386-derived) x86-64 ones are suboptimal. The In what way are they suboptimal? They seem to work just fine. -Andi - This SF.net ema

Re: [kvm-devel] gcc + kvm + 64 bit ? confused :-/

2007-07-11 Thread Andi Kleen
On Wed, Jul 11, 2007 at 11:43:26AM +0200, Benjamin Budts wrote: > I'm a bit confused using the -march=xxx options for gcc when using a > kernel virtual machine... > Getting errors on smp when using the -march=nocoma for gcc... possibly What errors? > because smp is not fully supported yet I s

Re: [kvm-devel] [PATCH 17/20] SMP: Implement on_cpu()

2007-07-09 Thread Andi Kleen
> Well, smp_call_function_single() is arch specific whereas on_cpu() is Yes, but the few instances should be relatively easy to fix. > generic code. Perhaps rename smp_call_function_single() to > __smp_call_function_single() and on_cpu() to smp_call_function_single()? The low level function che

Re: [kvm-devel] [PATCH 1/3] KVM paravirt_ops infrastructure

2007-05-31 Thread Andi Kleen
On Thursday 31 May 2007 12:11:16 Ingo Molnar wrote: > > * Andi Kleen <[EMAIL PROTECTED]> wrote: > > > > > > > + if (wrmsr_safe(MSR_KVM_API_MAGIC, __pa(para_state), 0)) { > > > > + printk(KERN_INFO "KVM guest: WRMSR probe f

Re: [kvm-devel] [PATCH 1/3] KVM paravirt_ops infrastructure

2007-05-31 Thread Andi Kleen
> > + if (wrmsr_safe(MSR_KVM_API_MAGIC, __pa(para_state), 0)) { > > + printk(KERN_INFO "KVM guest: WRMSR probe failed.\n"); > > + return -ENOENT; > > + } > > How about printk(KERN_INFO "I am not a KVM guest\n");? Actually paravirt probes that fail should b

Re: [kvm-devel] [PATCH 3/3] Eliminate read_cr3 on TLB flush

2007-05-30 Thread Andi Kleen
On Wednesday 30 May 2007 16:53:41 Anthony Liguori wrote: > Subject: [PATCH][PARAVIRT] Eliminate unnecessary CR3 read in TLB flush > > This patch eliminates the CR3 read (which would cause a VM exit) in the TLB > flush path.  The patch is based on Ingo Molnar's paravirt series. > This change coul

[kvm-devel] no userland for 2.6.21

2007-04-26 Thread Andi Kleen
All kvm versions currently available for download from sf (-18,-19,-20) say "kernel version too old" when running with the KVM as shipped in 2.6.21. -Andi - This SF.net email is sponsored by DB2 Express Download DB2 Express