Re: Interaction between Xen and XFS: stray RW mappings

2007-10-22 Thread Zachary Amsden
On Tue, 2007-10-23 at 01:35 +0200, Andi Kleen wrote: > On Tue, Oct 23, 2007 at 08:32:25AM +1000, David Chinner wrote: > > On Mon, Oct 22, 2007 at 09:07:40PM +0200, Andi Kleen wrote: > > > On Mon, Oct 22, 2007 at 11:40:52AM -0700, Jeremy Fitzhardinge wrote: > > > > Andi Kleen wrote: > > > > > Jeremy

Re: [stable] [PATCH 00/12] xen/paravirt_ops patches for 2.6.24

2007-10-15 Thread Zachary Amsden
On Tue, 2007-10-16 at 00:03 +0200, Andi Kleen wrote: > > Subject: [PATCH 12/12] xfs: eagerly remove vmap mappings to avoid > > upsetting Xen > > This should be probably done unconditionally because it's a undefined > dangerous condition everywhere. Should be done unconditionally. One could remap

Re: [stable] [PATCH 00/12] xen/paravirt_ops patches for 2.6.24

2007-10-15 Thread Zachary Amsden
On Tue, 2007-10-16 at 00:03 +0200, Andi Kleen wrote: > > Subject: [PATCH 12/12] xfs: eagerly remove vmap mappings to avoid > > upsetting Xen > > This should be probably done unconditionally because it's a undefined > dangerous condition everywhere. Should be done unconditionally. One could remap

Re: x86_64 : kernel initial decompression hangs on vmware

2007-10-10 Thread Zachary Amsden
On Wed, 2007-10-10 at 15:37 +0800, Fengguang Wu wrote: > Hi Zachary, > > One of my friends' vmware "hangs" on booting Linux 2.6.23, and then get > it to work by applying your patch at http://lkml.org/lkml/2007/8/4/72. > > It would be nice to see your fix going into mainline :-) I thought that pa

Re: [PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops

2007-09-28 Thread Zachary Amsden
On Fri, 2007-09-28 at 11:49 -0700, Jeremy Fitzhardinge wrote: > > We shouldn't need to export pv_init_ops. > > No. The only ones I export are: > > EXPORT_SYMBOL_GPL(pv_time_ops); > EXPORT_SYMBOL_GPL(pv_cpu_ops); > EXPORT_SYMBOL_GPL(pv_mmu_ops); > EXPORT_SYMBOL_GPL(pv_apic_ops); > EXPORT_SYMBOL

Re: [PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops

2007-09-28 Thread Zachary Amsden
On Fri, 2007-09-28 at 11:49 -0700, Jeremy Fitzhardinge wrote: > > We shouldn't need to export pv_init_ops. > > No. The only ones I export are: > > EXPORT_SYMBOL_GPL(pv_time_ops); > EXPORT_SYMBOL_GPL(pv_cpu_ops); > EXPORT_SYMBOL_GPL(pv_mmu_ops); > EXPORT_SYMBOL_GPL(pv_apic_ops); > EXPORT_SYMBOL

Re: [PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops

2007-09-28 Thread Zachary Amsden
On Fri, 2007-09-28 at 11:10 -0700, Jeremy Fitzhardinge wrote: > This patch refactors the paravirt_ops structure into groups of > functionally related ops: > > pv_info - random info, rather than function entrypoints > pv_init_ops - functions used at boot time (some for module_init too) > pv_misc_op

Re: [PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops

2007-09-28 Thread Zachary Amsden
On Fri, 2007-09-28 at 11:10 -0700, Jeremy Fitzhardinge wrote: > This patch refactors the paravirt_ops structure into groups of > functionally related ops: > > pv_info - random info, rather than function entrypoints > pv_init_ops - functions used at boot time (some for module_init too) > pv_misc_op

Re: [kvm-devel] [RFC][PATCH] ignore set_cr3 GP fault in non-pae mode

2007-09-19 Thread Zachary Amsden
On Wed, 2007-09-19 at 10:08 -0500, Anthony Liguori wrote: > Ryan Harper wrote: > > * Avi Kivity <[EMAIL PROTECTED]> [2007-09-19 03:58]: > > > >> Ryan Harper wrote: > >> > We have a test which verifies #GP is not caused by setting the bits on > either AMD or Intel chips. "Stray" b

Re: [kvm-devel] [RFC][PATCH] ignore set_cr3 GP fault in non-pae mode

2007-09-18 Thread Zachary Amsden
On Tue, 2007-09-18 at 16:25 -0500, Ryan Harper wrote: > * Nakajima, Jun <[EMAIL PROTECTED]> [2007-09-18 16:22]: > > Anthony Liguori wrote: > > > Ryan Harper wrote: > > > > Playing around with running VMware-server within a KVM guest and > > noticed > > > > that whenever we launch a VM within the gu

Re: [PATCH 2/3] Consolidate host virtualization support under Virtualization menu

2007-09-17 Thread Zachary Amsden
On Sun, 2007-09-16 at 07:56 -0700, Jeremy Fitzhardinge wrote: > Rusty Russell wrote: > > Well, containerization deserves its own menu, but the question is does i > > it belong under this menu? > > No, I don't think so. While there are some broad similarities in > effect, the technology is complet

Re: [PATCH 2/3] Consolidate host virtualization support under Virtualization menu

2007-09-17 Thread Zachary Amsden
On Sun, 2007-09-16 at 07:56 -0700, Jeremy Fitzhardinge wrote: > Rusty Russell wrote: > > Well, containerization deserves its own menu, but the question is does i > > it belong under this menu? > > No, I don't think so. While there are some broad similarities in > effect, the technology is complet

Re: [kvm-devel] [PATCH] Refactor hypercall infrastructure

2007-09-14 Thread Zachary Amsden
On Fri, 2007-09-14 at 16:44 -0500, Anthony Liguori wrote: > So then each module creates a hypercall page using this magic MSR and > the hypervisor has to keep track of it so that it can appropriately > change the page on migration. The page can only contain a single > instruction or else it ca

Re: [kvm-devel] [PATCH] Refactor hypercall infrastructure

2007-09-14 Thread Zachary Amsden
On Fri, 2007-09-14 at 16:44 -0500, Anthony Liguori wrote: > So then each module creates a hypercall page using this magic MSR and > the hypervisor has to keep track of it so that it can appropriately > change the page on migration. The page can only contain a single > instruction or else it ca

Re: [kvm-devel] [PATCH] Refactor hypercall infrastructure

2007-09-14 Thread Zachary Amsden
On Fri, 2007-09-14 at 16:02 -0500, Anthony Liguori wrote: > Jeremy Fitzhardinge wrote: > > Anthony Liguori wrote: > > > >> This patch refactors the current hypercall infrastructure to better > >> support live > >> migration and SMP. It eliminates the hypercall page by trapping the UD > >> exce

Re: [kvm-devel] [PATCH] Refactor hypercall infrastructure

2007-09-14 Thread Zachary Amsden
On Fri, 2007-09-14 at 16:02 -0500, Anthony Liguori wrote: > Jeremy Fitzhardinge wrote: > > Anthony Liguori wrote: > > > >> This patch refactors the current hypercall infrastructure to better > >> support live > >> migration and SMP. It eliminates the hypercall page by trapping the UD > >> exce

Re: [PATCH] Fix preemptible lazy mode bug

2007-09-05 Thread Zachary Amsden
On Thu, 2007-09-06 at 06:37 +1000, Rusty Russell wrote: > On Thu, 2007-08-23 at 22:46 -0700, Zachary Amsden wrote: > > I recently sent off a fix for lazy vmalloc faults which can happen under > > paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a > > b

Re: [PATCH] Fix preemptible lazy mode bug

2007-09-05 Thread Zachary Amsden
On Thu, 2007-09-06 at 06:37 +1000, Rusty Russell wrote: > On Thu, 2007-08-23 at 22:46 -0700, Zachary Amsden wrote: > > I recently sent off a fix for lazy vmalloc faults which can happen under > > paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a > > b

Re: [PATCH] Fix preemptible lazy mode bug

2007-09-05 Thread Zachary Amsden
On Thu, 2007-09-06 at 02:33 +1000, Rusty Russell wrote: > On Tue, 2007-09-04 at 14:42 +0100, Jeremy Fitzhardinge wrote: > > Rusty Russell wrote: > > > static inline void arch_flush_lazy_mmu_mode(void) > > > { > > > - PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_FLUSH); > > > + if (unlikely(__get_cpu_

Re: [PATCH] Fix preemptible lazy mode bug

2007-09-05 Thread Zachary Amsden
On Thu, 2007-09-06 at 02:33 +1000, Rusty Russell wrote: > On Tue, 2007-09-04 at 14:42 +0100, Jeremy Fitzhardinge wrote: > > Rusty Russell wrote: > > > static inline void arch_flush_lazy_mmu_mode(void) > > > { > > > - PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_FLUSH); > > > + if (unlikely(__get_cpu_

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-28 Thread Zachary Amsden
Benjamin Herrenschmidt wrote: On Wed, 2007-08-22 at 16:25 +1000, Rusty Russell wrote: On Wed, 2007-08-22 at 08:34 +0300, Avi Kivity wrote: Zachary Amsden wrote: This patch provides hypercalls for the i386 port I/O instructions, which vastly helps guests which use native-style

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-27 Thread Zachary Amsden
Benjamin Herrenschmidt wrote: On Wed, 2007-08-22 at 16:25 +1000, Rusty Russell wrote: On Wed, 2007-08-22 at 08:34 +0300, Avi Kivity wrote: Zachary Amsden wrote: This patch provides hypercalls for the i386 port I/O instructions, which vastly helps guests which use native-style

Re: [4/4] 2.6.23-rc3: known regressions v3

2007-08-24 Thread Zachary Amsden
? Handled-By : Zachary Amsden <[EMAIL PROTECTED]> Status : problem is being debugged Zach seemed to think that this is already fixed - I am not in a position to test it immediately so if we know what fixed this - can be closed. I'll report back once I get a chance to test

Re: [PATCH] Fix preemptible lazy mode bug

2007-08-24 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Hm. Doing any kind of lazy-state operation with preemption enabled is fundamentally meaningless. How does it get into a preemptable state Agree 100%. It is the lazy mode flush that might happen when preempt is enabled, but lazy mode is disabled. In that case,

Re: [PATCH] Fix preemptible lazy mode bug

2007-08-24 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Hm. Doing any kind of lazy-state operation with preemption enabled is fundamentally meaningless. How does it get into a preemptable state Agree 100%. It is the lazy mode flush that might happen when preempt is enabled, but lazy mode is disabled. In that case,

[PATCH] Fix preemptible lazy mode bug

2007-08-23 Thread Zachary Amsden
-preemptible. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED](none)> --- arch/i386/kernel/vmi.c| 14 ++ arch/i386/xen/enlighten.c |4 +++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/arch/i386/kernel/vmi.c b/arch/i386/kernel/vmi.c index 18673e0..9e669cb

[PATCH] Fix preemptible lazy mode bug

2007-08-23 Thread Zachary Amsden
-preemptible. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED](none)> --- arch/i386/kernel/vmi.c| 14 ++ arch/i386/xen/enlighten.c |4 +++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/arch/i386/kernel/vmi.c b/arch/i386/kernel/vmi.c index 18673e0..9e669cb

Re: 2.6.23-rc3 - CONFIG_VMI broken

2007-08-22 Thread Zachary Amsden
Parag Warudkar wrote: CONFIG_VMI seems to be broken, but I am not sure when - the last kernel I was running was 2.6.22-rc4 which used to boot fine and use VMI. Current git with same configuration causes the kernel to reboot early. Logs below. Deselecting CONFIG_VMI and rebuilding allows the kern

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: We might benefit from it, but would the BusLogic driver? It sets a nasty precedent for maintenance as different hypervisors and emulators hack up different drivers for their own performance. I still think it's preferable to change some drivers than everybody. AFAIK

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: We might benefit from it, but would the BusLogic driver? It sets a nasty precedent for maintenance as different hypervisors and emulators hack up different drivers for their own performance. I still think it's preferable to change some drivers than everybody. AFAIK

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Alan Cox wrote: I still think it's preferable to change some drivers than everybody. AFAIK BusLogic as real hardware is pretty much dead anyways, so you're probably the only primary user of it anyways. Go wild on it! I don't believe anyone is materially maintaining the buslogic driver and

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Alan Cox wrote: I still think it's preferable to change some drivers than everybody. AFAIK BusLogic as real hardware is pretty much dead anyways, so you're probably the only primary user of it anyways. Go wild on it! I don't believe anyone is materially maintaining the buslogic driver and

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: How is that measured? In a loop? In the same pipeline state? It seems a little dubious to me. I did the experiments in a controlled environment, with interrupts disabled and care to get the pipeline in the same state. It was a perfectly repeatable experiment. I don't

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: How is that measured? In a loop? In the same pipeline state? It seems a little dubious to me. I did the experiments in a controlled environment, with interrupts disabled and care to get the pipeline in the same state. It was a perfectly repeatable experiment. I don't

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: On Wed, Aug 22, 2007 at 09:48:25AM -0700, Zachary Amsden wrote: Andi Kleen wrote: On Tue, Aug 21, 2007 at 10:23:14PM -0700, Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: On Wed, Aug 22, 2007 at 09:48:25AM -0700, Zachary Amsden wrote: Andi Kleen wrote: On Tue, Aug 21, 2007 at 10:23:14PM -0700, Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: On Tue, Aug 21, 2007 at 10:23:14PM -0700, Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Andi Kleen wrote: On Tue, Aug 21, 2007 at 10:23:14PM -0700, Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Avi Kivity wrote: Since this is only for newer kernels, won't updating the driver to use a hypercall be more efficient? Or is this for existing out-of-tree drivers? Actually, it is for in-tree drivers that we emulate but don't want to pollute, and one out of tree driver (that will hopefull

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-22 Thread Zachary Amsden
Avi Kivity wrote: Since this is only for newer kernels, won't updating the driver to use a hypercall be more efficient? Or is this for existing out-of-tree drivers? Actually, it is for in-tree drivers that we emulate but don't want to pollute, and one out of tree driver (that will hopefull

Re: [PATCH] Fix lazy mode vmalloc synchronization for paravirt

2007-08-22 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: No, under Xen the kernel/hypervisor PMD is not shared between processes, so this is still used when PAE is enabled. Ahh, yes. So this was a lucky catch for us. Non-PAE kernels seem to be increasing in value at antique sales. Zach _

Re: [PATCH] Fix lazy mode vmalloc synchronization for paravirt

2007-08-21 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: No, under Xen the kernel/hypervisor PMD is not shared between processes, so this is still used when PAE is enabled. Ahh, yes. So this was a lucky catch for us. Non-PAE kernels seem to be increasing in value at antique sales. Zach - To unsubscribe from this li

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
H. Peter Anvin wrote: Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest OS. Not only is the trap for a #GP

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
H. Peter Anvin wrote: Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest OS. Not only is the trap for a #GP

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
Avi Kivity wrote: Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest OS. Not only is the trap for a #GP

Re: [PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
Avi Kivity wrote: Zachary Amsden wrote: In general, I/O in a virtual guest is subject to performance problems. The I/O can not be completed physically, but must be virtualized. This means trapping and decoding port I/O instructions from the guest OS. Not only is the trap for a #GP

[PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
make use of this feature. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> diff --git a/arch/i386/kernel/paravirt.c b/arch/i386/kernel/paravirt.c index ea962c0..4d0d150 100644 --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -329,6 +329,18 @@ struct paravirt_ops paravi

[PATCH] Add I/O hypercalls for i386 paravirt

2007-08-21 Thread Zachary Amsden
make use of this feature. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> diff --git a/arch/i386/kernel/paravirt.c b/arch/i386/kernel/paravirt.c index ea962c0..4d0d150 100644 --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -329,6 +329,18 @@ struct paravirt_ops paravi

[PATCH] Fix lazy mode vmalloc synchronization for paravirt

2007-08-21 Thread Zachary Amsden
kport to -stable as well. Zach Touching vmalloc memory in the middle of a lazy mode update can generate a kernel PDE update, which must be flushed immediately. The fix is to leave lazy mode when doing a vmalloc sync. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> d

[PATCH] Fix lazy mode vmalloc synchronization for paravirt

2007-08-21 Thread Zachary Amsden
kport to -stable as well. Zach Touching vmalloc memory in the middle of a lazy mode update can generate a kernel PDE update, which must be flushed immediately. The fix is to leave lazy mode when doing a vmalloc sync. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> d

Re: [PATCH] x86: skip paravirt patching when appropriate

2007-08-18 Thread Zachary Amsden
Chris Wright wrote: * Chris Wright ([EMAIL PROTECTED]) wrote: Now that I understand the problem, I do have a very simple (slightly overkill) fix for paravirt patching. This can be cleaned up to avoid the copies when they aren't needed, but that will take a little more auditing of the various

Re: [PATCH] x86: skip paravirt patching when appropriate

2007-08-18 Thread Zachary Amsden
Chris Wright wrote: * Chris Wright ([EMAIL PROTECTED]) wrote: Now that I understand the problem, I do have a very simple (slightly overkill) fix for paravirt patching. This can be cleaned up to avoid the copies when they aren't needed, but that will take a little more auditing of the various

Re: 2.6.23-rc3 - CONFIG_VMI broken

2007-08-14 Thread Zachary Amsden
Parag Warudkar wrote: CONFIG_VMI seems to be broken, but I am not sure when - the last kernel I was running was 2.6.22-rc4 which used to boot fine and use VMI. Current git with same configuration causes the kernel to reboot early. Logs below. Deselecting CONFIG_VMI and rebuilding allows the kern

Re: 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-09 Thread Zachary Amsden
Avi Kivity wrote: We haven't seen any issue with the 2.6.22 boot decompressor. Which of the four (fs, gs, ldt, or tr) were proving problematic and why? It was tr that was affecting Workstation, since we boot through normal BIOS path, and only a 16-bit task was loaded at this point. Just t

Re: 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-09 Thread Zachary Amsden
Avi Kivity wrote: We haven't seen any issue with the 2.6.22 boot decompressor. Which of the four (fs, gs, ldt, or tr) were proving problematic and why? It was tr that was affecting Workstation, since we boot through normal BIOS path, and only a 16-bit task was loaded at this point. Just t

Re: [kvm-devel] 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-09 Thread Zachary Amsden
Avi Kivity wrote: > > We haven't seen any issue with the 2.6.22 boot decompressor. Which of > the four (fs, gs, ldt, or tr) were proving problematic and why? It was tr that was affecting Workstation, since we boot through normal BIOS path, and only a 16-bit task was loaded at this point. Just

Re: [Lguest] [PATCH] lguest: Fix Malicious Guest GDT Host Crash

2007-08-09 Thread Zachary Amsden
Rusty Russell wrote: If a Guest makes hypercall which sets a GDT entry to not present, we currently set any segment registers using that GDT entry to 0. Unfortunately, this is not sufficient: there are other ways of altering GDT entries which will cause a fault. The correct solution to do what L

Re: 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-04 Thread Zachary Amsden
Before, I was seeing times up to a minute or more to decompress a 1.3MB kernel on a very fast box. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> === --- a/arch/x86_64/boot/compressed/head.S +++ a/arch/x86_64/boot/compresse

Re: 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-04 Thread Zachary Amsden
Before, I was seeing times up to a minute or more to decompress a 1.3MB kernel on a very fast box. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> === --- a/arch/x86_64/boot/compressed/head.S +++ a/arch/x86_64/boot/compresse

Re: [kvm-devel] 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-08-04 Thread Zachary Amsden
Before, I was seeing times up to a minute or more to decompress a 1.3MB kernel on a very fast box. Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]> === --- a/arch/x86_64/boot/compressed/head.S +++ a/arch/x86_64/boot/compresse

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-04 Thread Zachary Amsden
Andi Kleen wrote: In the boot decompressor for the kernel in the image Iouri provided, I 32bit or 64bit image? As you can plainly see, the call to memcpy (which is redefined in boot/compressed/misc.c) is made using stack calling convention. Unfortunately, the compiler generated the me

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-04 Thread Zachary Amsden
Andi Kleen wrote: In the boot decompressor for the kernel in the image Iouri provided, I 32bit or 64bit image? As you can plainly see, the call to memcpy (which is redefined in boot/compressed/misc.c) is made using stack calling convention. Unfortunately, the compiler generated the me

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-04 Thread Zachary Amsden
Andi Kleen wrote: In the boot decompressor for the kernel in the image Iouri provided, I 32bit or 64bit image? As you can plainly see, the call to memcpy (which is redefined in boot/compressed/misc.c) is made using stack calling convention. Unfortunately, the compiler generated the me

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-04 Thread Zachary Amsden
Andi Kleen wrote: In the boot decompressor for the kernel in the image Iouri provided, I 32bit or 64bit image? As you can plainly see, the call to memcpy (which is redefined in boot/compressed/misc.c) is made using stack calling convention. Unfortunately, the compiler generated the me

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-03 Thread Zachary Amsden
H. Peter Anvin wrote: I just got the following message on the syslinux mailing list: 2. On some platforms (vmware for example :), READING from the video memory in the 32bit mode is impossible (causes an exeption). Taking in to account that the scroll function in ilinux/arch/i386/boot/c

Re: Vmware crashes if compress/misc.c scrolls?

2007-08-03 Thread Zachary Amsden
H. Peter Anvin wrote: I just got the following message on the syslinux mailing list: 2. On some platforms (vmware for example :), READING from the video memory in the 32bit mode is impossible (causes an exeption). Taking in to account that the scroll function in ilinux/arch/i386/boot/c

Re: 2.6.22 x86_64 : kernel initial decompression hangs on vmware

2007-07-25 Thread Zachary Amsden
Gabriel Barazer wrote: Hi, After upgrading kernel to 2.6.22 on a Vmware workstation guest version 5.5 and 6 , the kernel decompression stage ("Decompressing Linux...") is hanging for a very long time (~5 minutes) before finally succeeding (displaying "done.\nBooting the kernel.\n"). During t

Re: [PATCH] Move KVM, paravirt, lguest, VMI and Xen under arch-level Virtualization option

2007-07-19 Thread Zachary Amsden
Rusty Russell wrote: Otherwise we end up with $NARCH copies of that Kconfig, each slightly different. The top-level entry can be made to depend on the archs that actually have some virt capability, so as not to show empty an menu. I dislike the duplication, too, but 1) it's a CPU capab

Re: [PATCH] Move KVM, paravirt, lguest, VMI and Xen under arch-level Virtualization option

2007-07-19 Thread Zachary Amsden
Rusty Russell wrote: Otherwise we end up with $NARCH copies of that Kconfig, each slightly different. The top-level entry can be made to depend on the archs that actually have some virt capability, so as not to show empty an menu. I dislike the duplication, too, but 1) it's a CPU capab

Re: new text patching for review

2007-07-19 Thread Zachary Amsden
Mathieu Desnoyers wrote: Yes, kprobes is case 1: atomic update. And we don't even have to bother about Intel's erratum. This one is ok. That's mainly the alternatives/paravirt code I worry about. Paravirt and alternatives should all be ok because they are done before SMP bringup and with NM

Re: new text patching for review

2007-07-19 Thread Zachary Amsden
Andi Kleen wrote: + *addr = opcode; + /* Not strictly needed, but can speed CPU recovery up */ + if (cpu_has_clflush) + asm("clflush (%0) " :: "r" (addr) : "memory"); + if (addr != oaddr) + vunmap(addr); clflush should take oaddr. If you h

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

2007-07-18 Thread Zachary Amsden
Rusty Russell wrote: > The main effect is to change the definition of "struct desc_struct" to > a union of more complex types. > Yay! Someone finally killed it. Every time I tried to kill it, I ended up off in the weeds chasing some bug. > > diff -r 656f3ff2c9ce arch/i386/kernel/process.c

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

2007-07-18 Thread Zachary Amsden
Rusty Russell wrote: The main effect is to change the definition of "struct desc_struct" to a union of more complex types. Yay! Someone finally killed it. Every time I tried to kill it, I ended up off in the weeds chasing some bug. diff -r 656f3ff2c9ce arch/i386/kernel/process.c @@ -

Re: [PATCH RFC] first cut at splitting up paravirt_ops

2007-07-09 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Here's a first attempt at splitting up paravirt_ops into more specific chunks. Its pretty clunky and chunky; mostly just a lot of replacement. The grouping of ops is very first cut; I'm open to suggestions about what groups should exist and what ops they each shoul

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Zachary Amsden wrote: I though about it, but it gets really ugly. You need wrappers for all the MMU ops in pvops generic code, which means either another layer of wrappers or a bunch of CONFIG_DEBUG_PARAVIRT Oh, yes, more wrappers please! We could do it at the

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Zachary Amsden wrote: I though about it, but it gets really ugly. You need wrappers for all the MMU ops in pvops generic code, which means either another layer of wrappers or a bunch of CONFIG_DEBUG_PARAVIRT Oh, yes, more wrappers please! We could do it at the

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: I never merged the whole bit upstream because it added a field to struct page. Hm, is that a big problem? It would be OK for a debug config option, wouldn't it? Also, it doesn't seem particularly vmi-specific. Could it be made part of the pvops infrastructure?

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: I never merged the whole bit upstream because it added a field to struct page. Hm, is that a big problem? It would be OK for a debug config option, wouldn't it? Also, it doesn't seem particularly vmi-specific. Could it be made part of the pvops infrastructure?

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Chris Wright wrote: * Stefan Richter ([EMAIL PROTECTED]) wrote: -#ifdef CONFIG_DEBUG_PAGE_TYPE +#if 0 /* debug page type */ This misnamed CONFIG_DEBUG_PAGE_TYPE (it's not a Kconfig variable) has about 120 lines debug code dangling on it. So, replacing it by #if 0 will hopefully

Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code

2007-07-06 Thread Zachary Amsden
Chris Wright wrote: * Stefan Richter ([EMAIL PROTECTED]) wrote: -#ifdef CONFIG_DEBUG_PAGE_TYPE +#if 0 /* debug page type */ This misnamed CONFIG_DEBUG_PAGE_TYPE (it's not a Kconfig variable) has about 120 lines debug code dangling on it. So, replacing it by #if 0 will hopefully

Re: [PATCH] I386: Deactivate the test for the dead CONFIG_DEBUG_PAGE_TYPE variable.

2007-07-06 Thread Zachary Amsden
Stefan Richter wrote: Robert P. J. Day wrote: Signed-off-by: Robert P. J. Day <[EMAIL PROTECTED]> --- diff --git a/arch/i386/kernel/vmi.c b/arch/i386/kernel/vmi.c Maintainers are apparently those under "PARAVIRT_OPS INTERFACE". CCs added. index c12720d..e3ce5c8 100644 --- a/arch

Re: [PATCH] I386: Deactivate the test for the dead CONFIG_DEBUG_PAGE_TYPE variable.

2007-07-06 Thread Zachary Amsden
Stefan Richter wrote: Robert P. J. Day wrote: Signed-off-by: Robert P. J. Day <[EMAIL PROTECTED]> --- diff --git a/arch/i386/kernel/vmi.c b/arch/i386/kernel/vmi.c Maintainers are apparently those under "PARAVIRT_OPS INTERFACE". CCs added. index c12720d..e3ce5c8 100644 --- a/arch

Re: [patch 3/5] remove ptep_test_and_clear_dirty and ptep_clear_flush_dirty.

2007-07-02 Thread Zachary Amsden
Martin Schwidefsky wrote: From: Martin Schwidefsky <[EMAIL PROTECTED]> Nobody is using ptep_test_and_clear_dirty and ptep_clear_flush_dirty. Remove the functions from all architectures. -static inline int -ptep_test_and_clear_dirty (struct vm_area_struct *vma, unsigned long addr, pte_t *ptep)

Re: Vmware crashes if compress/misc.c scrolls?

2007-06-21 Thread Zachary Amsden
H. Peter Anvin wrote: Zachary Amsden wrote: I'm failing to understand exactly what the failure here is. Can you provide sample code that generates the problem? Surely, it should be possible to read the framebuffer. The supposed test case was leaving the cursor at the botto

Re: Vmware crashes if compress/misc.c scrolls?

2007-06-21 Thread Zachary Amsden
H. Peter Anvin wrote: Jeremy Fitzhardinge wrote: H. Peter Anvin wrote: Jeremy Fitzhardinge wrote: You mean "is a real failure"? Or "is triggered by particular instructions"? It seems profoundly bogus (as in, surely DOS or something reads the framebuffer). A r

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Zachary Amsden wrote: Unless you also migrate the hypercall page itself and impose migration restrictions on compatible hypercall pages. Seems unreasonable, especially if you support migration between VT and SVM machines. The whole point of a hypercall page is to

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: > Zachary Amsden wrote: >> Unless you also migrate the hypercall page itself and impose >> migration restrictions on compatible hypercall pages. > > Seems unreasonable, especially if you support migration between VT and > SVM machines. The wh

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Hm, you need to quiesce the kernel in some way when you do a migrate, so making sure it isn't in a hypercall would be just part of that. In general you'd make sure all but one CPU is parked somewhere, and the remaining CPU is doing the suspend, right? The tricky

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: > > Hm, you need to quiesce the kernel in some way when you do a migrate, > so making sure it isn't in a hypercall would be just part of that. In > general you'd make sure all but one CPU is parked somewhere, and the > remaining CPU is doing the suspend, right? > > Th

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: I've been thinking about this wrt the hypercall page in KVM. The problem is that in a model like KVM (or presumably VMI), migration gets really difficult if you have anything but a trivial hypercall page since the hypercall page will change after migration. If you cann

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: > I've been thinking about this wrt the hypercall page in KVM. The > problem is that in a model like KVM (or presumably VMI), migration > gets really difficult if you have anything but a trivial hypercall > page since the hypercall page will change after migration. > > If

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: Zachary Amsden wrote: Anthony Liguori wrote: But what's the value in having it not in the kernel? Let's take Xen and lhype out of the picture because it clearly has to be there for them. You have a little less in the kernel now but then your kernel boots m

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: > Zachary Amsden wrote: >> Anthony Liguori wrote: >>> But what's the value in having it not in the kernel? Let's take Xen >>> and lhype out of the picture because it clearly has to be there for >>> them. You have a litt

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: Zachary Amsden wrote: Jeremy Fitzhardinge wrote: Anthony Liguori wrote: I don't agree that having paravirt_ops within a normal module is all that useful. By the time modules can be loaded, the kernel has completely booted. There should only be a handf

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Anthony Liguori wrote: > Zachary Amsden wrote: >> Jeremy Fitzhardinge wrote: >>> Anthony Liguori wrote: >>> >>>> I don't agree that having paravirt_ops within a normal module is all >>>> that useful. By the time modules can be loaded, the

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Anthony Liguori wrote: I don't agree that having paravirt_ops within a normal module is all that useful. By the time modules can be loaded, the kernel has completely booted. There should only be a handful of paravirt_ops implementations and they aren't large so I

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-20 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: > Anthony Liguori wrote: > >> I don't agree that having paravirt_ops within a normal module is all >> that useful. By the time modules can be loaded, the kernel has >> completely booted. There should only be a handful of paravirt_ops >> implementations and they aren'

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-19 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: Well, I was suggesting we could print the banner later rather than forcing an earlier init. The important part is that you set your pv_ops before patching occurs, since that will bake the function calls into the rest of the kernel, and it will ignore any further change

Re: [kvm-devel] [PATCH 0/5] KVM paravirt_ops implementation

2007-06-19 Thread Zachary Amsden
Jeremy Fitzhardinge wrote: > Well, I was suggesting we could print the banner later rather than > forcing an earlier init. > > The important part is that you set your pv_ops before patching occurs, > since that will bake the function calls into the rest of the kernel, and > it will ignore any furth

Re: [PATCH 0/5] KVM paravirt_ops implementation

2007-06-19 Thread Zachary Amsden
Anthony Liguori wrote: I don't see a compelling reason to paravirtualize earlier although I also don't see a compelling reason not too. I noticed that VMI hooks setup.c. It wasn't immediately obvious why it was hooking there but perhaps it worthwhile to have a common hook? I suspect VMI an

<    1   2   3   4   5   6   7   8   9   10   >