er_esp);
Reviewed-by: Liran Alon
I would also add to commit message:
Fixes: 06a5524f091b ("KVM: nVMX: Fix posted intr delivery when vcpu is
in guest mode")
Reviewed-by: Quan Xu
emove(struct device *dev)
{
vfio_del_group_dev(dev);
}
-struct mdev_driver vfio_mdev_driver = {
+static struct mdev_driver vfio_mdev_driver = {
.name = "vfio_mdev",
.probe = vfio_mdev_probe,
.remove = vfio_mdev_remove,
Reviewed-by: Quan Xu
On 2017/12/14 21:15, Gonglei (Arei) wrote:
-Original Message-
From: Liran Alon [mailto:liran.a...@oracle.com]
Sent: Thursday, December 14, 2017 9:02 PM
To: Gonglei (Arei); pbonz...@redhat.com; rkrc...@redhat.com
Cc: k...@vger.kernel.org; linux-kernel@vger.kernel.org; Huangweidong (C)
Su
On 2017/12/14 19:56, Paolo Bonzini wrote:
On 13/12/2017 17:28, Konrad Rzeszutek Wilk wrote:
1) VM idle path and network req/resp services:
Does this go away if you don't hit the idle path? Meaning if you
loop without hitting HLT/MWAIT? I am assuming the issue you are facing
is the latency - t
kvm_set_xcr() also depends on this */
- xsetbv(XCR_XFEATURE_ENABLED_MASK, vcpu->arch.xcr0);
+ if (vcpu->arch.xcr0 != host_xcr0)
+ xsetbv(XCR_XFEATURE_ENABLED_MASK, vcpu->arch.xcr0);
vcpu->guest_xcr0_loaded = 1;
}
}
Reviewed-by: Quan Xu
On 2017/12/14 00:28, Konrad Rzeszutek Wilk wrote:
On Wed, Dec 13, 2017 at 11:25:13PM +0800, Quan Xu wrote:
On Fri, Dec 8, 2017 at 11:10 PM, Konrad Rzeszutek Wilk <
konrad.w...@oracle.com> wrote:
On Fri, Dec 08, 2017 at 04:39:43PM +0800, Quan Xu wrote:
From: Ben Luo
This pa
On 2017/12/08 23:06, Konrad Rzeszutek Wilk wrote:
On Fri, Dec 08, 2017 at 04:39:46PM +0800, Quan Xu wrote:
From: Ben Luo
In general, KVM guest programs tsc-deadline timestamp to
MSR_IA32_TSC_DEADLINE MSR. This will cause a VM-exit, and
then KVM handles this timer for guest.
The tsc
From: Quan Xu
Since KVM removes the only I/O port 0x80 bypass on Intel hosts,
clear CPU_BASED_USE_IO_BITMAPS and set CPU_BASED_UNCOND_IO_EXITING
bit. Then these I/O permission bitmaps are not used at all, so
drop I/O permission bitmaps.
Signed-off-by: Jim Mattson
Signed-off-by: Radim Krčmář
VMCS components if an L1 hypervisor tries to access them.
I will fix in v2.
Quan
Alibaba Cloud
On Sun, Dec 10, 2017 at 9:37 PM, Quan Xu wrote:
On 2017/12/09 01:31, Jim Mattson wrote:
On Fri, Dec 8, 2017 at 2:22 AM, Quan Xu wrote:
From: Quan Xu
Since KVM removes the only I/O port 0x80
On 2017/12/09 00:18, David Hildenbrand wrote:
On 08.12.2017 11:22, Quan Xu wrote:
From: Quan Xu
Since KVM removes the only I/O port 0x80 bypass on Intel hosts,
clear CPU_BASED_USE_IO_BITMAPS and set CPU_BASED_UNCOND_IO_EXITING
bit. Then these I/O permission bitmaps are not used at all, so
On 2017/12/09 01:31, Jim Mattson wrote:
On Fri, Dec 8, 2017 at 2:22 AM, Quan Xu wrote:
From: Quan Xu
Since KVM removes the only I/O port 0x80 bypass on Intel hosts,
clear CPU_BASED_USE_IO_BITMAPS and set CPU_BASED_UNCOND_IO_EXITING
bit. Then these I/O permission bitmaps are not used at all
On 2017/12/09 00:18, David Hildenbrand wrote:
On 08.12.2017 11:22, Quan Xu wrote:
From: Quan Xu
Since KVM removes the only I/O port 0x80 bypass on Intel hosts,
clear CPU_BASED_USE_IO_BITMAPS and set CPU_BASED_UNCOND_IO_EXITING
bit. Then these I/O permission bitmaps are not used at all, so
From: Quan Xu
Since KVM removes the only I/O port 0x80 bypass on Intel hosts,
clear CPU_BASED_USE_IO_BITMAPS and set CPU_BASED_UNCOND_IO_EXITING
bit. Then these I/O permission bitmaps are not used at all, so
drop I/O permission bitmaps.
Signed-off-by: Jim Mattson
Signed-off-by: Radim Krčmář
-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
arch/x86/kvm/lapic.c |8 +++-
arch/x86/kvm/x86.c |7 ++-
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 20a23bb..5835a27 100644
--- a/arch/x86
next time event of the periodically
working kthread is a threshold to decide whether to program
tsc-deadline timestamp to MSR_IA32_TSC_DEADLINE MSR, or to
share page.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
arch/x86/include/asm/kvm_para.h |9
From: Ben Luo
KVM_FEATURE_PV_TIMER enables guest to check whether pvtimer
can be enabled in guest.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
Documentation/virtual/kvm/cpuid.txt |4
arch/x86/include/uapi/asm/kvm_para.h |1 +
arch/x86/kvm
scan share page and synchronize timer setting for guest
on a dedicated CPU.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
arch/x86/kvm/lapic.c | 138 ++
arch/x86/kvm/lapic.h |5 ++
2 files changed, 143 insertions
From: Ben Luo
When pvtimer is enabled, KVM programs timer to a dedicated CPU
through IPI. Whether the vCPU is on the dedicated CPU or any
other CPU, the timer interrupt will be delivered properly.
No need to migrate timer.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben
From: Ben Luo
Introduce kvm_xchg_guest_cached to exchange value with guest
page atomically.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
include/linux/kvm_host.h |3 +++
virt/kvm/kvm_main.c | 42 ++
2 files
From: Ben Luo
This patchset introduces a new paravirtualized mechanism to reduce VM-exit
caused by guest timer accessing.
In general, KVM guest programs tsc-deadline timestamp to MSR_IA32_TSC_DEADLINE
MSR. This will cause a VM-exit, and then KVM handles this timer for guest.
Also kvm always reg
From: Ben Luo
Guest enables pv timer functionality using this MSR
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Signed-off-by: Ben Luo
---
arch/x86/include/asm/kvm_host.h |5 +
arch/x86/include/uapi/asm/kvm_para.h |6 ++
arch/x86/kvm/lapic.c | 22
onzini
Cc: Radim Krčmář
Cc: Jim Mattson
Signed-off-by: Wanpeng Li
Reviewed-by: Quan Xu
On 2017-11-16 05:31, Konrad Rzeszutek Wilk wrote:
On Mon, Nov 13, 2017 at 06:05:59PM +0800, Quan Xu wrote:
From: Yang Zhang
Some latency-intensive workload have seen obviously performance
drop when running inside VM. The main reason is that the overhead
is amplified when running inside VM
On 2017-11-16 17:45, Daniel Lezcano wrote:
On 16/11/2017 10:12, Quan Xu wrote:
On 2017-11-16 06:03, Thomas Gleixner wrote:
On Wed, 15 Nov 2017, Peter Zijlstra wrote:
On Mon, Nov 13, 2017 at 06:06:02PM +0800, Quan Xu wrote:
From: Yang Zhang
Implement a generic idle poll which resembles
On 2017-11-17 19:36, Thomas Gleixner wrote:
On Fri, 17 Nov 2017, Quan Xu wrote:
On 2017-11-16 17:53, Thomas Gleixner wrote:
That's just plain wrong. We don't want to see any of this PARAVIRT crap in
anything outside the architecture/hypervisor interfacing code which really
need
On 2017-11-16 17:53, Thomas Gleixner wrote:
On Thu, 16 Nov 2017, Quan Xu wrote:
On 2017-11-16 06:03, Thomas Gleixner wrote:
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -210,6 +210,13 @@ int cpuidle_enter_state(struct cpuidle_device *dev,
struct cpuidle_driver *drv
On 2017-11-17 01:50, Paolo Bonzini wrote:
On 16/11/2017 15:28, Quan Xu wrote:
vcpu->srcu_idx = srcu_read_lock(&kvm->srcu);
+ kvm_load_guest_fpu(vcpu);
+
for (;;) {
if (kvm_vcpu_running(vcpu)) {
r = vcpu_enter_
On 2017-11-16 20:18, Paolo Bonzini wrote:
On 16/11/2017 13:12, Quan Xu wrote:
However it seems there is still some gap..
as Rik said, "at context switch time, the context switch code will save
the guest FPU state to current->thread.fpu when the VCPU thread is scheduled
out."
On 2017-11-16 18:21, Paolo Bonzini wrote:
On 16/11/2017 06:06, Quan Xu wrote:
when vcpu thread is scheduled out, the pkru value in
current->thread.fpu.state may be the host pkru value, instead of
guest pkru value (of course, this _assumes_ that the pkru is in
current->thread.fpu.state a
On 2017-11-16 16:45, Peter Zijlstra wrote:
On Wed, Nov 15, 2017 at 11:03:08PM +0100, Thomas Gleixner wrote:
If I understand the problem correctly then he wants to avoid the heavy
lifting in tick_nohz_idle_enter() in the first place, but there is already
an interesting quirk there which makes i
On 2017-11-16 06:03, Thomas Gleixner wrote:
On Wed, 15 Nov 2017, Peter Zijlstra wrote:
On Mon, Nov 13, 2017 at 06:06:02PM +0800, Quan Xu wrote:
From: Yang Zhang
Implement a generic idle poll which resembles the functionality
found in arch/. Provide weak arch_cpu_idle_poll function which
On 2017-11-16 12:21, Rik van Riel wrote:
On Thu, 2017-11-16 at 10:50 +0800, Quan Xu wrote:
On 2017-11-15 22:43, Rik van Riel wrote:
Can you explain why you believe that?
for example, a vcpu thread is running in kvm mode under cretical
condition to stop. QEMU send an IPI to cause a VM-exit
On 2017-11-15 22:43, Rik van Riel wrote:
Can you explain why you believe that?
for example, a vcpu thread is running in kvm mode under cretical
condition to stop. QEMU send an IPI to cause a VM-exit to happen
immediately, and this IPI doesn't make vcpu return to QEMU. IIUC
this vcpu thread wi
On 2017/11/14 18:27, Juergen Gross wrote:
On 14/11/17 10:38, Quan Xu wrote:
On 2017/11/14 15:30, Juergen Gross wrote:
On 14/11/17 08:02, Quan Xu wrote:
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for
On 2017/11/14 16:22, Wanpeng Li wrote:
2017-11-14 16:15 GMT+08:00 Quan Xu :
On 2017/11/14 15:12, Wanpeng Li wrote:
2017-11-14 15:02 GMT+08:00 Quan Xu :
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops
On 2017/11/14 15:30, Juergen Gross wrote:
On 14/11/17 08:02, Quan Xu wrote:
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we
On 2017/11/14 15:12, Wanpeng Li wrote:
2017-11-14 15:02 GMT+08:00 Quan Xu :
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we enter the real idle
state.
In virtualization, idle path includes several heavy
On 2017/11/13 23:08, Ingo Molnar wrote:
* Quan Xu wrote:
From: Quan Xu
To reduce the cost of poll, we introduce three sysctl to control the
poll time when running as a virtual machine with paravirt.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
---
Documentation/sysctl/kernel.txt
On 2017/9/1 14:49, Quan Xu wrote:
on 2017/8/29 22:39, Borislav Petkov wrote:
On Tue, Aug 29, 2017 at 11:46:37AM +, Yang Zhang wrote:
Add poll in do_idle. For UP VM, if there are running task, it will not
goes into idle path, so we only enable poll in SMP VM.
Signed-off-by: Yang Zhang
test result shows no
obvious performance gap compare with updating poll in irq handler.
one problem is that idle_stamp only used when using CFS scheduler. But
it is ok since it is the default policy for scheduler and only consider
it should enough.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
On 2017/9/14 17:19, Wanpeng Li wrote:
2017-09-14 16:36 GMT+08:00 Quan Xu :
on 2017/9/13 19:56, Yang Zhang wrote:
On 2017/8/29 22:56, Michael S. Tsirkin wrote:
On Tue, Aug 29, 2017 at 11:46:34AM +, Yang Zhang wrote:
Some latency-intensive workload will see obviously performance
drop
on 2017/9/1 13:57, Quan Xu wrote:
on 2017/8/29 20:45, Peter Zijlstra wrote:
On Tue, Aug 29, 2017 at 11:46:37AM +, Yang Zhang wrote:
Add poll in do_idle. For UP VM, if there are running task, it will not
goes into idle path, so we only enable poll in SMP VM.
Signed-off-by: Yang Zhang
on 2017/9/13 19:56, Yang Zhang wrote:
On 2017/8/29 22:56, Michael S. Tsirkin wrote:
On Tue, Aug 29, 2017 at 11:46:34AM +, Yang Zhang wrote:
Some latency-intensive workload will see obviously performance
drop when running inside VM.
But are we trading a lot of CPU for a bit of lower late
on 2017/8/29 22:39, Borislav Petkov wrote:
On Tue, Aug 29, 2017 at 11:46:37AM +, Yang Zhang wrote:
Add poll in do_idle. For UP VM, if there are running task, it will not
goes into idle path, so we only enable poll in SMP VM.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Cc: Thomas
on 2017/8/29 20:45, Peter Zijlstra wrote:
On Tue, Aug 29, 2017 at 11:46:37AM +, Yang Zhang wrote:
Add poll in do_idle. For UP VM, if there are running task, it will not
goes into idle path, so we only enable poll in SMP VM.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Broken SoB
46 matches
Mail list logo