Marcelo Tosatti wrote:
On Sun, Apr 20, 2008 at 02:16:52PM +0300, Avi Kivity wrote:
The iperf numbers are pretty good. Performance of UP guests increase
slightly but SMP
is quite significant.
I expect you're seeing contention induced by memcpy()s and inefficient
emulation. With
Jamie Lokier wrote:
Avi Kivity wrote:
Does that mean for the majority of deployments, the slow version is
sufficient. The few that care about performance can use Linux AIO?
In essence, yes. s/slow/slower/ and s/performance/ultimate block device
performance/.
Many deployments
Javier Guerra Giraldez wrote:
On Sunday 20 April 2008, Avi Kivity wrote:
Also, I'd presume that those that need 10K IOPS and above will not place
their high throughput images on a filesystem; rather on a separate SAN LUN.
i think that too; but still that LUN would be accessed by the
Esteemed kvm developers!
I've been trying to debug this bug
https://bugs.launchpad.net/ubuntu/+source/kvm/+bug/219165
It originally revealed itself by failing to run grub (which is a 32 bit
binary) when installing Ubuntu from our live cd. It turned out to be a
more general problem of 32 bit
Marcelo Tosatti wrote:
From what me and marcelo discussed, I think there's a possibility that
it has marginally something to do with precision of clock calculation.
Gerd's patches address that issues. Can somebody test this with those
patches (both guest and host), while I'm off ?
Haven't
Jeremy Fitzhardinge wrote:
Gerd Hoffmann wrote:
I'm looking at the guest side of the issue right now, trying to identify
common code, and while doing so noticed that xen does the
version-check-loop in both get_time_values_from_xen(void) and
xen_clocksource_read(void), and I can't see any
Hi All,
This is today's KVM test result against kvm.git
6cf59734fc9bc89954d0157524eea156c2f9a5ab and kvm-userspace.git
43201923a67647913b67da255ca60f0269a3e34a.
One Issue Fixed
1.Can't boot smp guests on ia32e host
Gerd Hoffmann wrote:
* Host: make kvm pv clock really compatible with xen pv clock.
* Guest/xen: factor out some xen clock code into a separate
source file (pvclock.[ch]), so kvm can reuse it.
* Guest/kvm: make kvm clock compatible with xen clock by using
Hello everybody
After I update to KVM-66 (from 65), I have problem to boot guests with
lilo installed. Boot sequence always stop with LIL output. With kvm-65
everythink works great. I have also windows XP guest, which boot without
problem. With -no-kvm guests boot ok.
Processor: AMD Opteron
lmsw and smsw were implemented only with a register operand. Extend them
to support a memory operand as well. Fixes Windows running some display
compatibility test on AMD hosts.
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/x86_emulate.c | 29 +
1
From: Hollis Blanchard [EMAIL PROTECTED]
Don't allow building as a module (asm-offsets dependencies).
Also, automatically select KVM_BOOKE_HOST until we better separate the guest
and host layers.
Signed-off-by: Hollis Blanchard [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
From: Hollis Blanchard [EMAIL PROTECTED]
It's a globally exported symbol now.
Signed-off-by: Hollis Blanchard [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
include/linux/kvm_host.h |2 +-
virt/kvm/kvm_main.c |8
virt/kvm/kvm_trace.c |4 ++--
3
From: Joerg Roedel [EMAIL PROTECTED]
This patch adds syncing of the lapic.tpr field to the V_TPR field of the VMCB.
With this change we can safely remove the CR8 read intercept.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c |
David S. Ahern wrote:
I added the traces and captured data over another apparent lockup of the
guest.
This seems to be representative of the sequence (pid/vcpu removed).
(+4776) VMEXIT [ exitcode = 0x, rip = 0x c016127c ]
(+ 0) PAGE_FAULT [ errorcode =
From: Joerg Roedel [EMAIL PROTECTED]
There is not selective cr0 intercept bug. The code in the comment sets the
CR0.PG bit. But KVM sets the CR4.PG bit for SVM always to implement the paged
real mode. So the 'mov %eax,%cr0' instruction does not change the CR0.PG bit.
Selective CR0 intercepts only
From: Anthony Liguori [EMAIL PROTECTED]
This patch introduces a gfn_to_pfn() function and corresponding functions like
kvm_release_pfn_dirty(). Using these new functions, we can modify the x86
MMU to no longer assume that it can always get a struct page for any given gfn.
We don't want to
We never hit this, since there is currently no reason to emulate lea.
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/x86_emulate.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/x86_emulate.c b/arch/x86/kvm/x86_emulate.c
index
From: Marcelo Tosatti [EMAIL PROTECTED]
Timers that fire between guest hlt and vcpu_block's add_wait_queue() are
ignored, possibly resulting in hangs.
Also make sure that atomic_inc and waitqueue_active tests happen in the
specified order, otherwise the following race is open:
CPU0
From: Feng (Eric) Liu [EMAIL PROTECTED]
Trace markers allow userspace to trace execution of a virtual machine
in order to monitor its performance.
Signed-off-by: Feng (Eric) Liu [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/vmx.c | 35
From: Hollis Blanchard [EMAIL PROTECTED]
Signed-off-by: Hollis Blanchard [EMAIL PROTECTED]
Acked-by: Paul Mackerras [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
MAINTAINERS |7 +++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/MAINTAINERS
From: Marcelo Tosatti [EMAIL PROTECTED]
kvm_pv_mmu_op should not take mmap_sem. All gfn_to_page() callers down
in the MMU processing will take it if necessary, so as it is it can
deadlock.
Apparently a leftover from the days before slots_lock.
Signed-off-by: Marcelo Tosatti [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/s390/kvm/Kconfig |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/s390/kvm/Kconfig b/arch/s390/kvm/Kconfig
index 2489b34..1761b74 100644
--- a/arch/s390/kvm/Kconfig
+++ b/arch/s390/kvm/Kconfig
@@ -36,6 +36,9 @@
From: Joerg Roedel [EMAIL PROTECTED]
If the CR8 write intercept is disabled the V_TPR field of the VMCB needs to be
synced with the TPR field in the local apic.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c | 12
From: Joerg Roedel [EMAIL PROTECTED]
To properly forward a MCE occured while the guest is running to the host, we
have to intercept this exception and call the host handler by hand. This is
implemented by this patch.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL
From: Marcelo Tosatti [EMAIL PROTECTED]
So userspace can save/restore the mpstate during migration.
[avi: export the #define constants describing the value]
[christian: add s390 stubs]
[avi: ditto for ia64]
Signed-off-by: Marcelo Tosatti [EMAIL PROTECTED]
Signed-off-by: Christian Borntraeger
From: Joerg Roedel [EMAIL PROTECTED]
The svm_set_cr4 function is indented with spaces. This patch replaces
them with tabs.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c |8
1 files changed, 4 insertions(+), 4
From: Joerg Roedel [EMAIL PROTECTED]
When KVM uses NPT there is no reason to intercept task switches. This patch
removes the intercept for it in that case.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c |1 +
1 files changed,
From: Joerg Roedel [EMAIL PROTECTED]
With the usage of the V_TPR field this comment is now obsolete.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c |7 ---
1 files changed, 0 insertions(+), 7 deletions(-)
diff --git
From: Feng(Eric) Liu [EMAIL PROTECTED]
This interface allows user a space application to read the trace of kvm
related events through relayfs.
Signed-off-by: Feng (Eric) Liu [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/Kconfig | 11 ++
Бухгалтеру о договорной работе организации - правовые основы и налоговый аспект
7 мая 2008, г. Мoсква
Прoграмма семинара
Программа семинара
1. Как правильно оформить договор, обязательные и дополнительные условия
договоров. Когда можно считать соблюденной простую письменную форму договора.
From: Hollis Blanchard [EMAIL PROTECTED]
PowerPC 440 KVM needs to know how many TLB entries are used for the host kernel
linear mapping (it does not modify these mappings when switching between guest
and host execution).
Signed-off-by: Hollis Blanchard [EMAIL PROTECTED]
Acked-by: Josh Boyer
This lets us treat the case where mod == 3 in the same manner as other cases.
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/x86_emulate.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kvm/x86_emulate.c b/arch/x86/kvm/x86_emulate.c
index
We wish to export it to userspace, so move it into the kvm namespace.
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/ia64/kvm/kvm-ia64.c| 26 +-
arch/x86/kvm/i8254.c|2 +-
arch/x86/kvm/lapic.c| 16
arch/x86/kvm/x86.c
From: Hollis Blanchard [EMAIL PROTECTED]
Device Control Registers are essentially another address space found on PowerPC
4xx processors, analogous to PIO on x86. DCRs are always 32 bits, and can be
identified by a 32-bit number. We forward most DCR accesses to userspace for
emulation (with the
From: Joerg Roedel [EMAIL PROTECTED]
This patch aligns the host version of the CR4.MCE bit with the CR4 active in
the guest. This is necessary to get MCE exceptions when the guest is running.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
Shutdown interception clears the vmcb, leaving the asid at zero (which is
illegal. so force a new asid on vmcb initialization.
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
arch/x86/kvm/svm.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/svm.c
From: Joerg Roedel [EMAIL PROTECTED]
This patch exports the kvm_lapic_set_tpr() function from the lapic code to
modules. It is required in the kvm-amd module to optimize CR8 intercepts.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Signed-off-by: Avi Kivity [EMAIL PROTECTED]
---
From: Joerg Roedel [EMAIL PROTECTED]
This patch disables the intercept of CR8 writes if the TPR is not masking
interrupts. This reduces the total number CR8 intercepts to below 1 percent of
what we have without this patch using Windows 64 bit guests.
Signed-off-by: Joerg Roedel [EMAIL PROTECTED]
Gerd Hoffmann wrote:
Hmm, I somehow fail to see a case where it could be non-atomic ...
get_time_values() copies a consistent snapshot, thus
xen_clocksource_read() doesn't race against xen updating the fields.
The snapshot is in a per-cpu variable, thus it doesn't race against
other guest
Avi,
kvm_dev_ioctl casts the arg value to void __user *, just to recast it
again to long. This seems unnecessary.
According to objdump the binary code on x86 is unchanged by this patch.
Signed-off-by: Christian Borntraeger [EMAIL PROTECTED]
---
virt/kvm/kvm_main.c |3 +--
1 file changed, 1
Avi Kivity wrote:
At such a tiny difference, I'm wondering why Linux-AIO exists at all,
as it complicates the kernel rather a lot. I can see the theoretical
appeal, but if performance is so marginal, I'm surprised it's in
there.
Linux aio exists, but that's all that can be said for it. It
Jeremy Fitzhardinge wrote:
Xen could change the parameters in the instant after get_time_values().
That change could be as a result of suspend-resume, so the parameters
and the tsc could be wildly different.
Ah, ok, forgot the rdtsc in the picture. With that in mind I fully
agree that the
Jeremy Fitzhardinge wrote:
Gerd Hoffmann wrote:
+cycle_t pvclock_clocksource_read(struct kvm_vcpu_time_info *src)
+{
+struct pvclock_shadow_time *shadow = get_cpu_var(shadow_time);
+cycle_t ret;
+
+pvclock_get_time_values(shadow, src);
+ret = shadow-system_timestamp +
Gerd Hoffmann wrote:
Jeremy Fitzhardinge wrote:
Xen could change the parameters in the instant after get_time_values().
That change could be as a result of suspend-resume, so the parameters
and the tsc could be wildly different.
Ah, ok, forgot the rdtsc in the picture. With that
Gerd Hoffmann wrote:
+cycle_t pvclock_clocksource_read(struct kvm_vcpu_time_info *src)
+{
+ struct pvclock_shadow_time *shadow;
+ cycle_t ret;
+ unsigned version;
+
+ shadow = get_cpu_var(shadow_time);
+ do {
+ version = pvclock_get_time_values(shadow,
Soren Hansen wrote:
Esteemed kvm developers!
I've been trying to debug this bug
https://bugs.launchpad.net/ubuntu/+source/kvm/+bug/219165
It originally revealed itself by failing to run grub (which is a 32 bit
binary) when installing Ubuntu from our live cd. It turned out to be a
more
Jeremy Fitzhardinge wrote:
Gerd Hoffmann wrote:
Not really. There are only two calls, one in clocksource_read() and one
in the init path. The later is superfluous I think because
clocksource_read() is the only user of the shadowed time info.
Hm. It doesn't look like shadow_time needs to
If I try
$ qemu -kernel minimal-kernel -drive file=jeos-devel.img,if=virtio
I get the following error:
A disk image must be given for 'hda' when booting a Linux kernel
is this neccesseary?
--
damjan | дамјан
This is my jabber ID -- [EMAIL PROTECTED]
-- not my mail address, it's a
I have some questions for the FAQ, about the configuration of Linux guests:
a) is swap needed in the guest (I'd say no, but..)
b) what filesystem is best for a guest
c) what io scheduler in the guest (noop? or cfq)
d) are there any runtime kernel tweaks for the guest (/proc/sys)?
e) suggested
On Fri, 18 Apr 2008 10:25:15 -0500
Anthony Liguori [EMAIL PROTECTED] wrote:
I'd prefer you not do an emulate_instruction loop at all. Just emulate
one instruction on vmentry failure and let VT tell you what instructions
you need to emulate.
It's only four instructions so I don't think
On Mon, Apr 21, 2008 at 08:51:17AM -0500, Anthony Liguori wrote:
We're releasing on Thursday, and I needed a quick fix, so I reverted
the calls to kvm_{save,load}_registers in vmport_ioport_read to the
old code that simply saved the eax, ebx, ecx, edx, esi, and edi
registers, but I'm supposing
Hi,
This one fixes a segfault problem I am seeing on ia64 due to the
malloc'ed address being truncated to 32 bit.
Cheers,
Jes
Include qemu-common.h for the prototype for qemu_mallocz to avoid
the being truncated to 32 bit.
Signed-off-by: Jes Sorensen [EMAIL PROTECTED]
---
If I try
$ qemu -kernel minimal-kernel -drive file=jeos-devel.img,if=virtio
I get the following error:
A disk image must be given for 'hda' when booting a Linux kernel
is this neccesseary?
Hi, i don't know if it is always needed (I saw some patches to avoid
that) but you can use:
Marcelo Tosatti wrote:
From: Alan Pevec [EMAIL PROTECTED]
- add serial console, workaround for F9 livecd KVM guest dying with
standard console only.
VNC console will go blank but node will continue to boot
With only console=tty qemu-kvm dies when, AFAICT from udevdebug output,
On Mon, Apr 21, 2008 at 01:24:00PM -0500, Anthony Liguori wrote:
Marcelo Tosatti wrote:
From: Alan Pevec [EMAIL PROTECTED]
- add serial console, workaround for F9 livecd KVM guest dying with
standard console only.
VNC console will go blank but node will continue to boot
With
Hi,
I am running kvm-66 on top of a debian sid host with 2.6.24 (intel 32bit host).
Got the following in my logs today :
Apr 21 17:55:01 buffy kernel: WARNING: at
/usr/src/modules/kvm/mmu.c:390 account_shadowed()
Apr 21 17:55:01 buffy kernel: Pid: 21416, comm: kvm Tainted: P
2.6.24-1-686 #1
Apr
virtio net device does not appear to show itself in the guest. I'm
curious of what options I may be missing. Here is my config
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25-rc9
# Mon Apr 21 15:52:50 2008
#
# CONFIG_PPC64 is not set
#
# Processor support
#
#
The pci_register_device() call in PCI nic initialization routines can
fail. Handle this failure and propagate a meaningful error message to
the user instead of generating a SEGV.
Cc: Marcelo Tosatti [EMAIL PROTECTED]
Signed-off-by: Chris Wright [EMAIL PROTECTED]
---
qemu/hw/e1000.c |3
The pci hotadd patches make it easy to trigger segfaults when adding more
devices than a single PCI bus can handle. The following 2 patches fix the
pci nic devices and virtio-blk device. Now the following the following:
OK bus 0, slot 31, function 0 (devfn 248)
(qemu) pci_add 0 nic
Hollis Blanchard wrote:
On Sunday 20 April 2008 00:38:32 Liu, Eric E wrote:
Christian Ehrhardt wrote:
Liu, Eric E wrote:
Hollis Blanchard wrote:
On Wednesday 16 April 2008 01:45:34 Liu, Eric E wrote: [...]
Actually... we could have kvmtrace itself insert the metadata, so
there would be no
On Tue, Apr 22, 2008 at 12:59 AM, Damjan [EMAIL PROTECTED] wrote:
If I try
$ qemu -kernel minimal-kernel -drive file=jeos-devel.img,if=virtio
I get the following error:
A disk image must be given for 'hda' when booting a Linux kernel
is this neccesseary?
Hi, i don't know
[Christian, Hollis, how much is this ABI breakage going to hurt you?]
A recent proposed feature addition to the virtio block driver revealed
some flaws in the API, in particular how easy it is to break big
endian machines.
The virtio config space was originally chosen to be little-endian,
* Marcelo Tosatti ([EMAIL PROTECTED]) wrote:
Looks good. Does SCSI handle pci_register_device() failure too?
Yeah, but it missed actually checking the return value from
lsi_scsi_init. Patch to follow.
thanks,
-chris
-
During hotadd of SCSI devices lsi_scsi_init() handles failed
pci_device_register(), but qemu_system_hot_add_storage() will try and
attach a drive any way. Handle this error case rather the generating
SEGV.
Cc: Marcelo Tosatti [EMAIL PROTECTED]
Signed-off-by: Chris Wright [EMAIL PROTECTED]
---
64 matches
Mail list logo