On 06/13/2011 07:46 AM, Xiao Guangrong wrote:
and it has little heavy sine we need to walk guest page table,
and build spte under mmu-lock.
For shadow, yes, this is a good optimization. But with nested paging it
slow things down. We already have the gpa, so all we need to do is follow
On 06/13/2011 06:38 AM, Xiao Guangrong wrote:
On 06/12/2011 04:38 PM, Avi Kivity wrote:
On 06/10/2011 06:47 AM, Xiao Guangrong wrote:
Also, shadow walking is not significantly faster than guest page table
walking. And if we miss, we have to walk the guest page tables in any case.
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #25 from Avi Kivity a...@redhat.com 2011-06-13 08:11:52 ---
What do these commits mean?
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are
On 06/11/2011 12:23 PM, Jan Kiszka wrote:
From: Jan Kiszkajan.kis...@siemens.com
These FPU states are properly maintained by KVM but not yet by TCG. So
far we unconditionally set them to 0 in the guest which may cause
state corruptions - not only during migration.
-#define CPU_SAVE_VERSION 12
On 06/11/2011 01:23 PM, Jan Kiszka wrote:
From: Jan Kiszkajan.kis...@siemens.com
KVM_MAX_MSIX_PER_DEV implies that up to that many MSI-X entries can be
requested. But the kernel so far rejected already the upper limit.
Applied, thanks.
--
error compiling committee.c: too many arguments to
On 06/11/2011 01:24 PM, Jan Kiszka wrote:
From: Jan Kiszkajan.kis...@siemens.com
The documented behavior did not match the implemented one (which also
never changed).
Applied, thanks.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the
On 06/10/2011 11:07 AM, Jan Kiszka wrote:
Moving virtio-pci into the hwlib in upstream broke qemu-kvm due to some
unneeded build dependency on CONFIG_KVM. Stub out kvm_set_irqfd so that
we can build against it unconditionally.
Applied, thanks.
--
error compiling committee.c: too many
On 06/10/2011 12:35 PM, Andre Przywara wrote:
commit 123108f1c1aafd51d6a5c79cc04d7999dd88a930 tried to fix KVMs
XSAVE valid feature scanning, but it was wrong. It was not considering
the sparse nature of this bitfield, instead reading values from
uninitialized members of the entries array.
This
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #26 from Steve stefan.bo...@gmail.com 2011-06-13 08:59:11 ---
I found some commit that could affect this but it's only my assumption.
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #27 from Avi Kivity a...@redhat.com 2011-06-13 08:59:59 ---
Please run the bisect and we'll know for sure.
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because:
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #28 from Steve stefan.bo...@gmail.com 2011-06-13 09:15:33 ---
I used git bitsect as you described above but
i didn't see any output, probably i did something wrong.
git clone
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #29 from Avi Kivity a...@redhat.com 2011-06-13 09:22:55 ---
You should run 'git bisect bad' in the directory where you have the
linux-2.6 clone. git will then check out a new commit for you to test
(and tell you about it).
--
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #30 from Avi Kivity a...@redhat.com 2011-06-13 09:35:05 ---
On 06/13/2011 01:19 AM, bugzilla-dae...@bugzilla.kernel.org wrote:
--- Comment #20 from Stevestefan.bo...@gmail.com 2011-06-12 22:19:51 ---
I tested this kernel tags
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #31 from Steve stefan.bo...@gmail.com 2011-06-13 09:55:41 ---
Of course I did bitsect in cloned git directory but i didn't see any output.
I need to try this:
git clone
Signed-off-by: Jiří Župka jzu...@redhat.com
---
client/tests/kvm/kvm.py |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/client/tests/kvm/kvm.py b/client/tests/kvm/kvm.py
index bb17f28..84c361e 100644
--- a/client/tests/kvm/kvm.py
+++ b/client/tests/kvm/kvm.py
@@ -71,7
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #32 from Avi Kivity a...@redhat.com 2011-06-13 12:18:56 ---
On 06/13/2011 12:55 PM, bugzilla-dae...@bugzilla.kernel.org wrote:
Of course I did bitsect in cloned git directory but i didn't see any output.
Strange, did you follow
Signed-off-by: Avi Kivity a...@redhat.com
---
lib/x86/processor.h |8
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/lib/x86/processor.h b/lib/x86/processor.h
index f69f9ff..c7e1afb 100644
--- a/lib/x86/processor.h
+++ b/lib/x86/processor.h
@@ -2,6 +2,7 @@
#define
Signed-off-by: Avi Kivity a...@redhat.com
---
Makefile |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index b6e8759..7bce541 100644
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,7 @@ DESTDIR := $(PREFIX)/share/qemu/tests
.PHONY: arch_clean clean
#make
Signed-off-by: Avi Kivity a...@redhat.com
---
config-x86-common.mak |4 ++-
x86/pmu.c | 63 +
2 files changed, 66 insertions(+), 1 deletions(-)
create mode 100644 x86/pmu.c
diff --git a/config-x86-common.mak
- Clear cr0.ts
- Enable cr4.osxsave and cr4.osxmmexcpt (for sse)
Signed-off-by: Avi Kivity a...@redhat.com
---
lib/x86/smp.c |9 +
x86/cstart.S |2 ++
x86/cstart64.S |2 ++
3 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/lib/x86/smp.c b/lib/x86/smp.c
index
Following is a simple unit test for the PMU emulation.
Avi Kivity (4):
Build tests with optimization enabled
startup: prepare CPU for floating point operation
Add rdpmc instruction accessor
Add PMU test
Makefile |2 +-
config-x86-common.mak |4 ++-
Please send in any agenda items you are interested in covering.
thanks,
-juan
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Michael S. Tsirkin m...@redhat.com wrote on 06/07/2011 09:38:30 PM:
This is on top of the patches applied by Rusty.
Warning: untested. Posting now to give people chance to
comment on the API.
OK, this seems to have survived some testing so far,
after I dropped patch 4 and fixed build
Provide a CPUID leaf that describes the emulated PMU.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/x86.c | 20 +++-
1 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 7bc5e56..7e1a02b 100644
---
Add a helper function that emulates the RDPMC instruction operation.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/include/asm/kvm_host.h |1 +
arch/x86/kvm/x86.c | 15 +++
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git
The perf_event overflow handler does not receive any caller-derived
argument, so many callers need to resort to looking up the perf_event
in their local data structure. This is ugly and doesn't scale if a
single callback services many perf_events.
Fix by adding a context parameter to
On Mon, Jun 13, 2011 at 07:02:27PM +0530, Krishna Kumar2 wrote:
Michael S. Tsirkin m...@redhat.com wrote on 06/07/2011 09:38:30 PM:
This is on top of the patches applied by Rusty.
Warning: untested. Posting now to give people chance to
comment on the API.
OK, this seems to have
Use perf_events to emulate an architectural PMU, version 1.
Caveats:
- counters that have PMI (interrupt) enabled stop counting after the
interrupt is signalled. This is because we need one-shot samples
that keep counting, which perf doesn't support yet
- some combinations of INV and CMASK
This patchset exposes an emulated version 1 architectural performance
monitoring unit to KVM guests. The PMU is emulated using perf_events,
so the host kernel can multiplex host-wide, host-user, and the
guest on available resources.
Caveats:
- counters that have PMI (interrupt) enabled stop
Needed to deliver performance monitoring interrupts.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/lapic.c |2 +-
arch/x86/kvm/lapic.h |1 +
2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 2b2255b..79d4850
The v1 PMU does not have any fixed counters. Using the v2 constraints,
which do have fixed counters, causes an additional choice to be present
in the weight calculation, but not when actually scheduling the event,
leading to an event being not scheduled at all.
Signed-off-by: Avi Kivity
KVM needs one-shot samples, since a PMC programmed to -X will fire after X
events and then again after 2^40 events (i.e. variable period).
Signed-off-by: Avi Kivity a...@redhat.com
---
include/linux/perf_event.h |5 +
kernel/events/core.c |3 ++-
2 files changed, 7
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/include/asm/kvm_emulate.h |1 +
arch/x86/kvm/emulate.c | 13 -
arch/x86/kvm/x86.c |7 +++
3 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/arch/x86/include/asm/kvm_emulate.h
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/svm.c | 15 +++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
index 475d1c9..4f81119 100644
---
Krishna Kumar2/India/IBM@IBMIN wrote on 06/13/2011 07:02:27 PM:
...
With 16K, there was an improvement in SD, but
higher sessions seem to slightly degrade BW/SD:
I meant to say With 16K, there was an improvement in BW
above. Again the numbers are not very reproducible,
I will test with
RDPMC is only privileged if CR4.PCE=0. check_rdpmc() already implements this,
so all we need to do is drop the Priv flag.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/emulate.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/emulate.c
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/vmx.c | 15 ++-
1 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index f5b49c7..6ac3d54 100644
---
Michael S. Tsirkin m...@redhat.com wrote on 06/13/2011 07:05:13 PM:
I ran the latest patches with 1K I/O (guest-local host) and
the results are (60 sec run for each test case):
Hi!
Did you apply this one:
[PATCHv2 RFC 4/4] Revert virtio: make add_buf return capacity remaining
?
It
This patch exposes DRNG feature to KVM guests.
The RDRAND instruction can provide software with sequences of
random numbers generated from white noise.
Signed-off-by: Yang, Wei wei.y.y...@intel.com
---
arch/x86/kvm/x86.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git
On 06/13/2011 04:52 PM, Yang, Wei Y wrote:
This patch exposes DRNG feature to KVM guests.
The RDRAND instruction can provide software with sequences of
random numbers generated from white noise.
Signed-off-by: Yang, Weiwei.y.y...@intel.com
Applied, thanks.
--
error compiling committee.c:
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #33 from Steve stefan.bo...@gmail.com 2011-06-13 14:05:34 ---
(In reply to comment #32)
On 06/13/2011 12:55 PM, bugzilla-dae...@bugzilla.kernel.org wrote:
Of course I did bitsect in cloned git directory but i didn't see any
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #34 from Avi Kivity a...@redhat.com 2011-06-13 14:12:50 ---
On 06/13/2011 05:05 PM, bugzilla-dae...@bugzilla.kernel.org wrote:
7) git bisect start v2.6.39-rc1 v2.6.38:
Already on 'master'
Bisecting: 4616 revisions left
https://bugzilla.kernel.org/show_bug.cgi?id=37262
--- Comment #35 from Steve stefan.bo...@gmail.com 2011-06-13 14:27:31 ---
(In reply to comment #34)
On 06/13/2011 05:05 PM, bugzilla-dae...@bugzilla.kernel.org wrote:
7) git bisect start v2.6.39-rc1 v2.6.38:
Already on 'master'
I'm planning to use iSCSI targets (over gigabit VLANs) for KVM guest
disks. The question I'm wondering about is whether it's better to md
(multi-path + mirror) the iSCSI targets on the host, then create LVM
partitions for the guests. Or to directly md the iSCSI targets within
the guest.
On one
On 06/13/2011 07:35 AM, Avi Kivity wrote:
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivity a...@redhat.com
---
arch/x86/kvm/vmx.c | 15 ++-
1 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/vmx.c
If subtest is successful runsubtest returns True otherwise False.
Signed-off-by: Jiří Župka jzu...@redhat.com
---
client/common_lib/test.py |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/client/common_lib/test.py b/client/common_lib/test.py
index d5564c3..5b2e12c
Signed-off-by: Jiří Župka jzu...@redhat.com
---
client/common_lib/base_job_unittest.py | 20
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/client/common_lib/base_job_unittest.py
b/client/common_lib/base_job_unittest.py
index 503b62c..b98b01d 100755
---
On 06/13/2011 07:17 PM, David Ahern wrote:
On 06/13/2011 07:35 AM, Avi Kivity wrote:
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivitya...@redhat.com
---
arch/x86/kvm/vmx.c | 15 ++-
1 files changed, 14 insertions(+), 1 deletions(-)
On 06/13/2011 07:05 PM, Emmanuel Noobadmin wrote:
I'm planning to use iSCSI targets (over gigabit VLANs) for KVM guest
disks. The question I'm wondering about is whether it's better to md
(multi-path + mirror) the iSCSI targets on the host, then create LVM
partitions for the guests. Or to
On 06/13/2011 10:29 AM, Avi Kivity wrote:
On 06/13/2011 07:17 PM, David Ahern wrote:
On 06/13/2011 07:35 AM, Avi Kivity wrote:
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivitya...@redhat.com
---
arch/x86/kvm/vmx.c | 15 ++-
1
On Sun, Jun 12, 2011 at 8:35 AM, Avi Kivity a...@redhat.com wrote:
On 06/11/2011 03:02 AM, AP wrote:
I am building kvm as an external module against 2.6.38-8 (Ubuntu 11.04
kernel).
Why?
I did not want move to the new kernel from kvm.git. I just wanted to
upgrade to the latest kvm module for
* David Ahern daah...@cisco.com wrote:
On 06/13/2011 10:29 AM, Avi Kivity wrote:
On 06/13/2011 07:17 PM, David Ahern wrote:
On 06/13/2011 07:35 AM, Avi Kivity wrote:
Intercept RDPMC and forward it to the PMU emulation code.
Signed-off-by: Avi Kivitya...@redhat.com
---
On 06/13/2011 07:35 AM, Avi Kivity wrote:
diff --git a/arch/x86/kvm/pmu.c b/arch/x86/kvm/pmu.c
new file mode 100644
index 000..763e763
--- /dev/null
+++ b/arch/x86/kvm/pmu.c
@@ -0,0 +1,255 @@
+/*
+ * Kernel-based Virtual Machine -- Performane Monitoring Unit support
+ *
+ * Copyright
On 06/13/2011 11:38 AM, Ingo Molnar wrote:
I should have known that. Is there some git magic I can use to
avoid cloning yet another tree (I already have Ingo's tree for
perf-core and perf-urgent along with Linus' tree)?
You can use 'git remote add kvm ...' and then 'git remote update'.
On 6/14/11, Avi Kivity a...@redhat.com wrote:
My gut feeling is to do iscsi in the host. I guess it's best to measure
though. Please post your findings if you do that.
Any suggestions or recommendations as to how/what should I be measuring with?
So far in trying to determine how bad is the
On 06/13/2011 07:34 AM, Avi Kivity wrote:
This patchset exposes an emulated version 1 architectural performance
monitoring unit to KVM guests. The PMU is emulated using perf_events,
so the host kernel can multiplex host-wide, host-user, and the
guest on available resources.
Any particular
Hi,
This series is a repost of the last series I posted about this.
It tries to address most concerns that were raised at the time,
plus makes uses of the static_branch interface to disable the
steal code when not in use.
Glauber Costa (7):
KVM-HDR Add constant to represent KVM MSRs enabled
This patch is simple, put in a different commit so it can be more easily
shared between guest and hypervisor. It just defines a named constant
to indicate the enable bit for KVM-specific MSRs.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik van Riel r...@redhat.com
CC: Jeremy Fitzhardinge
To implement steal time, we need the hypervisor to pass the guest information
about how much time was spent running other processes outside the VM.
This is per-vcpu, and using the kvmclock structure for that is an abuse
we decided not to make.
In this patchset, I am introducing a new msr,
To implement steal time, we need the hypervisor to pass the guest information
about how much time was spent running other processes outside the VM.
This is per-vcpu, and using the kvmclock structure for that is an abuse
we decided not to make.
In this patchset, I am introducing a new msr,
This is a first proposal for using steal time information
to influence the scheduler. There are a lot of optimizations
and fine grained adjustments to be done, but it is working reasonably
so far for me (mostly)
With this patch (and some host pinnings to demonstrate the situation),
two vcpus with
Register steal time within KVM. Everytime we sample the steal time
information, we update a local variable that tells what was the
last time read. We then account the difference.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik van Riel r...@redhat.com
CC: Jeremy Fitzhardinge
This patch adds a function pointer in one of the many paravirt_ops
structs, to allow guests to register a steal time function.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik van Riel r...@redhat.com
CC: Jeremy Fitzhardinge jeremy.fitzhardi...@citrix.com
CC: Peter Zijlstra
This patch accounts steal time time in kernel/sched.
I kept it from last proposal, because I still see advantages
in it: Doing it here will give us easier access from scheduler
variables such as the cpu rq. The next patch shows an example of
usage for it.
Since functions like account_idle_time()
On Mon, 2011-06-13 at 13:17 +0200, Jiří Župka wrote:
Signed-off-by: Jiří Župka jzu...@redhat.com
Thank you Jiri, applied!
http://autotest.kernel.org/changeset/5420
---
client/tests/kvm/kvm.py |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git
On Mon, 2011-06-13 at 18:26 +0200, Jiří Župka wrote:
If subtest is successful runsubtest returns True otherwise False.
Applied, thanks!
http://autotest.kernel.org/changeset/5421
Signed-off-by: Jiří Župka jzu...@redhat.com
---
client/common_lib/test.py |4 ++--
1 files changed, 2
On Mon, 2011-06-13 at 18:26 +0200, Jiří Župka wrote:
Applied, thanks!
http://autotest.kernel.org/changeset/5422
Signed-off-by: Jiří Župka jzu...@redhat.com
---
client/common_lib/base_job_unittest.py | 20
1 files changed, 20 insertions(+), 0 deletions(-)
diff
On 06/13/2011 07:31 PM, Glauber Costa wrote:
This patch is simple, put in a different commit so it can be more easily
shared between guest and hypervisor. It just defines a named constant
to indicate the enable bit for KVM-specific MSRs.
Signed-off-by: Glauber Costaglom...@redhat.com
CC: Rik
On Mon, 13 Jun 2011, Glauber Costa wrote:
This patch is simple, put in a different commit so it can be more easily
shared between guest and hypervisor. It just defines a named constant
to indicate the enable bit for KVM-specific MSRs.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik
On Mon, 13 Jun 2011, Glauber Costa wrote:
To implement steal time, we need the hypervisor to pass the guest information
about how much time was spent running other processes outside the VM.
This is per-vcpu, and using the kvmclock structure for that is an abuse
we decided not to make.
In
On Mon, 13 Jun 2011, Glauber Costa wrote:
To implement steal time, we need the hypervisor to pass the guest information
about how much time was spent running other processes outside the VM.
This is per-vcpu, and using the kvmclock structure for that is an abuse
we decided not to make.
In
On Mon, 13 Jun 2011, Glauber Costa wrote:
This patch adds a function pointer in one of the many paravirt_ops
structs, to allow guests to register a steal time function.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik van Riel r...@redhat.com
CC: Jeremy Fitzhardinge
On Mon, 13 Jun 2011, Glauber Costa wrote:
This patch accounts steal time time in kernel/sched.
I kept it from last proposal, because I still see advantages
in it: Doing it here will give us easier access from scheduler
variables such as the cpu rq. The next patch shows an example of
usage
On Mon, 13 Jun 2011, Glauber Costa wrote:
This is a first proposal for using steal time information
to influence the scheduler. There are a lot of optimizations
and fine grained adjustments to be done, but it is working reasonably
so far for me (mostly)
With this patch (and some host
On Mon, 13 Jun 2011, Glauber Costa wrote:
Register steal time within KVM. Everytime we sample the steal time
information, we update a local variable that tells what was the
last time read. We then account the difference.
Signed-off-by: Glauber Costa glom...@redhat.com
CC: Rik van Riel
On 06/13/2011 07:31 PM, Glauber Costa wrote:
To implement steal time, we need the hypervisor to pass the guest information
about how much time was spent running other processes outside the VM.
This is per-vcpu, and using the kvmclock structure for that is an abuse
we decided not to make.
In
Hello,
My Linux kernel is 2.6.32, and my machine has an Intel e1000 1Gbps
NIC. The Guest OS is Windows XP. I use PCI passthrough to pass the
e1000 NIC to the VM, so Windows XP can directly use this physical NIC
and should has higher performance.
I successfully install Intel PRO/1000 PT driver
On 06/14/2011 07:31 AM, Glauber Costa wrote:
This is a first proposal for using steal time information
to influence the scheduler. There are a lot of optimizations
and fine grained adjustments to be done, but it is working reasonably
so far for me (mostly)
With this patch (and some host
On Mon, Jun 13, 2011 at 8:15 PM, Flypen CloudMe fly...@gmail.com wrote:
Hello,
My Linux kernel is 2.6.32, and my machine has an Intel e1000 1Gbps
NIC. The Guest OS is Windows XP. I use PCI passthrough to pass the
e1000 NIC to the VM, so Windows XP can directly use this physical NIC
and
79 matches
Mail list logo