Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
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

Re: [Xen-devel] [PATCH RFC v3 0/6] x86/idle: add halt poll support

2017-11-22 Thread 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

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Daniel Lezcano
On 20/11/2017 08:05, Quan Xu wrote: [ ... ] But the irq_timings stuff is heading into the same direction, with a more complex prediction logic which should tell you pretty good how long that idle period is going to be and in case of an interrupt heavy workload this

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
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 needs it. The

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
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

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
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,

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
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

[PATCH] virto_net: remove empty file 'virtio_net.'

2017-11-22 Thread Joel Stanley
Looks like this was mistakenly added to the tree as part of commit 186b3c998c50 ("virtio-net: support XDP_REDIRECT"). Signed-off-by: Joel Stanley --- drivers/net/virtio_net. | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 drivers/net/virtio_net. diff

Re: [PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Daniel Lezcano
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

Re: [PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread Quan Xu
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

Re: [PATCH RFC v3 0/6] x86/idle: add halt poll support

2017-11-22 Thread Xu Quan
2017-11-15 20:13 GMT+08:00 Peter Zijlstra : > On Mon, Nov 13, 2017 at 07:01:40PM +0800, Quan Xu wrote: > > Documentation/sysctl/kernel.txt | 35 > > arch/x86/include/asm/paravirt.h |5 ++ > > arch/x86/include/asm/paravirt_types.h |6

Re: [PATCH] vhost/scsi: Use safe iteration in vhost_scsi_complete_cmd_work()

2017-11-22 Thread Byungchul Park
On 11/16/2017 10:30 AM, Michael S. Tsirkin wrote: On Thu, Nov 16, 2017 at 08:52:39AM +0900, Byungchul Park wrote: On Thu, Nov 09, 2017 at 09:17:29AM +0900, Byungchul Park wrote: I am sorry for having made a mistake on it. Hello Nicholas, Please consider this patch urgently. I'm sorry for

Re: [PATCH] vhost/scsi: Use safe iteration in vhost_scsi_complete_cmd_work()

2017-11-22 Thread Byungchul Park
On Thu, Nov 09, 2017 at 09:17:29AM +0900, Byungchul Park wrote: > I am sorry for having made a mistake on it. Hello Nicholas, Please consider this patch urgently. I'm sorry for having changed the original behavior with the previous patch. The safe version of llist API should be used to keep the

Re: [PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread Quan Xu
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

Re: [PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread Quan Xu
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

Re: [PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread 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 for pv_idle. .poll is called in idle path

Re: [PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread 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 enter the real idle state. In virtualization, idle path

Re: [PATCH RFC v3 4/6] Documentation: Add three sysctls for smart idle poll

2017-11-22 Thread Quan Xu
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

Re: [PATCH] drm/virtio: add create_handle support.

2017-11-22 Thread lepton
Ping. On Wed, Nov 8, 2017 at 10:42 AM, Lepton Wu wrote: > Add create_handle support to virtio fb. Without this, screenshot tool > in chromium OS can't work. > > Signed-off-by: Lepton Wu > --- > drivers/gpu/drm/virtio/virtgpu_display.c | 12 >

Re: [PATCH RFC v3 4/6] Documentation: Add three sysctls for smart idle poll

2017-11-22 Thread Wanpeng Li
Hi Ingo, On 11/13/17 11:08 PM, 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

[PATCH RFC v3 3/6] sched/idle: Add a generic poll before enter real idle path

2017-11-22 Thread Quan Xu
From: Yang Zhang Implement a generic idle poll which resembles the functionality found in arch/. Provide weak arch_cpu_idle_poll function which can be overridden by the architecture code if needed. Interrupts arrive which may not cause a reschedule in idle loops. In KVM

[PATCH RFC v3 0/6] x86/idle: add halt poll support

2017-11-22 Thread Quan Xu
From: Quan Xu 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. The most cost I have seen is inside idle path. This patch introduces a new mechanism to poll

[PATCH RFC v3 5/6] tick: get duration of the last idle loop

2017-11-22 Thread Quan Xu
From: Quan Xu the last idle loop is from tick_nohz_idle_enter to tick_nohz_idle_exit. Signed-off-by: Yang Zhang Signed-off-by: Quan Xu Cc: Frederic Weisbecker Cc: Thomas Gleixner Cc:

[PATCH RFC v3 6/6] KVM guest: introduce smart idle poll algorithm

2017-11-22 Thread Quan Xu
From: Yang Zhang using smart idle poll to reduce the useless poll when system is idle. Signed-off-by: Quan Xu Signed-off-by: Yang Zhang Cc: Paolo Bonzini Cc: Thomas Gleixner Cc:

[PATCH RFC v3 4/6] Documentation: Add three sysctls for smart idle poll

2017-11-22 Thread Quan Xu
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

[PATCH RFC v3 1/6] x86/paravirt: Add pv_idle_ops to paravirt ops

2017-11-22 Thread Quan Xu
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 operations includes timer access(LAPIC timer or TSC deadline

[PATCH RFC v3 2/6] KVM guest: register kvm_idle_poll for pv_idle_ops

2017-11-22 Thread Quan Xu
From: Quan Xu Although smart idle poll has nothing to do with paravirt, it can not bring any benifit to native. So we only enable it when Linux runs as a KVM guest( also it can extend to other hypervisor like Xen, HyperV and VMware). Introduce per-CPU variable

[PATCH RFC v3 0/6] x86/idle: add halt poll support

2017-11-22 Thread Quan Xu
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. The most cost I have seen is inside idle path. This patch introduces a new mechanism

[PATCH RFC v3 0/6] x86/idle: add halt poll support

2017-11-22 Thread Quan Xu
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. The most cost I have seen is inside idle path. This patch introduces a new mechanism

[PATCH] vhost/scsi: Use safe iteration in vhost_scsi_complete_cmd_work()

2017-11-22 Thread Byungchul Park
I am sorry for having made a mistake on it. -8<- >From ba9a0f76dffceffa4fa3aa2d9be49cdb0d9b7d4f Mon Sep 17 00:00:00 2001 From: Byungchul Park Date: Thu, 9 Nov 2017 09:00:21 +0900 Subject: [PATCH] vhost/scsi: Use safe iteration in vhost_scsi_complete_cmd_work()

[PATCH] drm/cirrus: add create_handle support.

2017-11-22 Thread Lepton Wu
Add create_handle support to cirrus fb. Without this, screenshot tool in chromium OS can't work. Signed-off-by: Lepton Wu --- drivers/gpu/drm/cirrus/cirrus_main.c | 9 + 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/cirrus/cirrus_main.c

Re: [locking/paravirt] static_key_disable_cpuslocked(): static key 'virt_spin_lock_key+0x0/0x20' used before call to jump_label_init()

2017-11-22 Thread Dou Liyang
Hi Fengguang, There are two different warning. At 10/30/2017 03:35 PM, Fengguang Wu wrote: On Sun, Oct 29, 2017 at 11:51:55PM +0100, Fengguang Wu wrote: Hi Linus, Up to now we see the below boot error/warnings when testing v4.14-rc6. The original warning:

[PATCH] drm/virtio: add create_handle support.

2017-11-22 Thread Lepton Wu
Add create_handle support to virtio fb. Without this, screenshot tool in chromium OS can't work. Signed-off-by: Lepton Wu --- drivers/gpu/drm/virtio/virtgpu_display.c | 12 1 file changed, 12 insertions(+) diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c

Re: [PATCH 08/13] x86/paravirt: Clean up paravirt_types.h

2017-11-22 Thread Borislav Petkov
On Wed, Oct 04, 2017 at 10:58:29AM -0500, Josh Poimboeuf wrote: > Make paravirt_types.h more understandable: > > - Use more consistent and logical naming > - Simplify interfaces > - Put related macros together > - Improve whitespace > > Signed-off-by: Josh Poimboeuf > --- >

Re: [PATCH 07/13] x86/paravirt: Simplify ____PVOP_CALL()

2017-11-22 Thread Borislav Petkov
On Wed, Oct 04, 2017 at 10:58:28AM -0500, Josh Poimboeuf wrote: > Remove the inline asm duplication in PVOP_CALL(). > > Also add 'IS_ENABLED(CONFIG_X86_32)' to the return variable logic, > making the code clearer and rendering the comment unnecessary. > > Signed-off-by: Josh Poimboeuf

Re: 4.14: WARNING: CPU: 4 PID: 2895 at block/blk-mq.c:1144 with virtio-blk (also 4.12 stable)

2017-11-22 Thread Jens Axboe
On 11/22/2017 12:28 AM, Christoph Hellwig wrote: > Jens, please don't just revert the commit in your for-linus tree. > > On its own this will totally mess up the interrupt assignments. Give > me a bit of time to sort this out properly. I wasn't going to push it until I heard otherwise. I'll