[pve-devel] [PATCH qemu-server] fix #2083: Add hv_tlbflush, hv_ipi, hv_evmcs enlightenments

Thomas Lamprecht t.lamprecht at proxmox.com
Tue Jun 18 14:48:49 CEST 2019


On 6/18/19 2:20 PM, Stefan Reiter wrote:
> Kernels 4.18+ (4.17+ for evmcs) support new Hyper-V enlightenments for
> Windows KVM guests. QEMU supports these since 3.0.
> tlbflush and ipi improve performance on overcommitted systems, evmcs
> improves nested virtualization.
> 
> It's not entirely clear to me if Win7 already supports these, but since
> they don't cause any penalties, enabling them regardless should be fine.

you tried it out with win7? I.e., it still works with them?

Also, what to they do or allow one to do? Some short description
would be really nice to have in the commit message, as besides from
tlbflush I cannot really guess what they do so each visit to this
commit would trigger some need for research - better to have the
info in the commit itself.

> 
> Signed-off-by: Stefan Reiter <s.reiter at proxmox.com>
> ---
>  PVE/QemuServer.pm | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
> index 341e0b0..88d07c2 100644
> --- a/PVE/QemuServer.pm
> +++ b/PVE/QemuServer.pm
> @@ -7170,6 +7170,13 @@ sub add_hyperv_enlightenments {
>  	    push @$cpuFlags , 'hv_synic';
>  	    push @$cpuFlags , 'hv_stimer';
>  	}
> +
> +	if (qemu_machine_feature_enabled ($machine_type, $kvmver, 3, 0))
> +	{
.     ^^^

please ensure you checked out our perl style guide:
https://pve.proxmox.com/wiki/Perl_Style_Guide

Above should be:

	if (qemu_machine_feature_enabled ($machine_type, $kvmver, 3, 0)) {
	    ...

In general, please try to keep style in-line with the common style of the
document you're currently editing. If it uses consistently another style
that one should preferred. If a mixed style is used fall back to the one
from our perl style guide must be preferred. If it's an external project
same rules apply, but for their style guide - if any.

I normally just would have fixed that up in a followup commit and told
you afterwards, but as you hopefully send a v2 with improved commit message
anyway you can change this for that already.

> +	    push @$cpuFlags , 'hv_tlbflush';
> +	    push @$cpuFlags , 'hv_ipi';
> +	    push @$cpuFlags , 'hv_evmcs';
> +	}
>      }
>  }
>  
> 





More information about the pve-devel mailing list