[PVE-User] Regression on virtio-net ? (Was: Re: Proxmox VE 4.2 released!)

Alexandre DERUMIER aderumier at odiso.com
Thu May 12 11:30:03 CEST 2016


also in kernel 4.4.8
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.8

commit 84f2443e213727323064e581e281d778831fa859
Author: Paolo Bonzini <pbonzini at redhat.com>
Date:   Tue Mar 29 17:56:57 2016 +0200

    KVM: x86: reduce default value of halt_poll_ns parameter
    
    commit 14ebda3394fd3e5388747e742e510b0802a65d24 upstream.
    
    Windows lets applications choose the frequency of the timer tick,
    and in Windows 10 the maximum rate was changed from 1024 Hz to
    2048 Hz.  Unfortunately, because of the way the Windows API
    works, most applications who need a higher rate than the default
    64 Hz will just do
    
       timeGetDevCaps(&tc, sizeof(tc));
       timeBeginPeriod(tc.wPeriodMin);
    
    and pick the maximum rate.  This causes very high CPU usage when
    playing media or games on Windows 10, even if the guest does not
    actually use the CPU very much, because the frequent timer tick
    causes halt_poll_ns to kick in.
    
    There is no really good solution, especially because Microsoft
    could sooner or later bump the limit to 4096 Hz, but for now
    the best we can do is lower a bit the upper limit for
    halt_poll_ns. :-(
    
    Reported-by: Jon Panozzo <jonp at lime-technology.com>
    Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>



----- Mail original -----
De: "aderumier" <aderumier at odiso.com>
À: "Wolfgang Bumiller" <w.bumiller at proxmox.com>
Cc: "proxmoxve" <pve-user at pve.proxmox.com>
Envoyé: Jeudi 12 Mai 2016 11:27:11
Objet: Re: [PVE-User] Regression on virtio-net ? (Was: Re: Proxmox VE 4.2 released!)

I think this is related to : 

https://www.redhat.com/archives/vfio-users/2016-April/msg00032.html 

----- Mail original ----- 
De: "Wolfgang Bumiller" <w.bumiller at proxmox.com> 
À: "Gilou" <contact+dev at gilouweb.com> 
Cc: "proxmoxve" <pve-user at pve.proxmox.com>, "aderumier" <aderumier at odiso.com> 
Envoyé: Mercredi 11 Mai 2016 12:36:28 
Objet: Re: [PVE-User] Regression on virtio-net ? (Was: Re: Proxmox VE 4.2 released!) 

On Tue, May 10, 2016 at 01:37:27PM +0200, Gilou wrote: 
> Le 09/05/2016 15:33, Alexandre DERUMIER a écrit : 
> > For v6 (skylake), I think they are new feature implementation in kvm 
> > http://www.gossamer-threads.com/lists/linux/kernel/2267259 
> > 
> > for v4, I don't see any recent change 
> > 
> > 
> > You can reproduce with both v4 and v6 ? 
> 
> Yes, though again m y lab is unavailable for this, so I can't do it 
> "again". But it was a 4xxx & 6xxx that showed the issue in the first place. 
> 
> I just tried on a 4xxx I have on my laptop, it has the issue (using 
> kvm/ubuntu rather than Proxmox, but still) 

After bisecting it seems this commit is the issue: 
https://github.com/torvalds/linux/commit/aca6ff29c4063a8d467cdee241e6b3bf7dc4a171 

Can you try loading the kvm module with these options: 
halt_poll_ns_grow=0 halt_poll_ns_shrink=0 

(/etc/modprobe.d + reboot, or grub boot commandline (with the `kvm.` 
prefix to the options), or just: 
# rmmod kvm-intel 
# rmmod kvm 
# modprobe kvm halt_poll_ns_grow=0 halt_poll_ns_shrink=0 
# modprobe kvm-intel 
) 

This should revert the behavior of this commit. In my test VM this 
commit bumps my load from 60% to 100% with the same 'perf' output you 
had, and setting these options revert it back to normal. 
_______________________________________________ 
pve-user mailing list 
pve-user at pve.proxmox.com 
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-user 



More information about the pve-user mailing list