[pve-devel] [PATCH qemu-server 1/2] fix undefined value when starting a q35 machine VM

Alexandre DERUMIER aderumier at odiso.com
Thu Feb 25 15:06:16 CET 2016


Hi,

I think it should be ok indeed.

I think the undef was just to avoid to call kvm_user_version(),

I didn't notice the warning.

Thanks for the fix !


----- Mail original -----
De: "Thomas Lamprecht" <t.lamprecht at proxmox.com>
À: "pve-devel" <pve-devel at pve.proxmox.com>
Cc: "aderumier" <aderumier at odiso.com>
Envoyé: Jeudi 25 Février 2016 14:50:36
Objet: Re: [pve-devel] [PATCH qemu-server 1/2] fix undefined value when starting a q35 machine VM

Git didn't want to send the CC to you Alexandre, so here it is: 

On 02/25/2016 02:47 PM, Thomas Lamprecht wrote: 
> As there the signleton function "kvm_user_version" may not have been 
> called and with the machine alias q35 the regex from the 
> qemu_machine_feature_enabled method does not match and thus we 
> need a valid kvm version here 
> --- 
> 
> @Alexandre - only to notify you: 
> 
> You added/changed this in 249c4a6c753a43c975ffb5907273233ce4ce866a 
> and I saw no reason to use undef for the $kvmver parameter of the 
> qemu_machine_feature_enabled method. 
> I did not test a live migration from a 3.4 PVE to an 4.0 upgrade 
> (to much hassle for me for now, to be honest, and we do not support 
> that officially, AFAIK). 
> But the logic should still hold as the machine type still has 
> priority. 
> Anybody who want to use this has to set a specific machine type 
> to make this work anyhow (pc-q35-2.2 instead of the q35 alias) 
> so I see no problem but wanted to ask you nonetheless if you have 
> any objection with this. 
> 
> 
> PVE/QemuServer.pm | 3 ++- 
> 1 file changed, 2 insertions(+), 1 deletion(-) 
> 
> diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm 
> index c199437..bd9cf45 100644 
> --- a/PVE/QemuServer.pm 
> +++ b/PVE/QemuServer.pm 
> @@ -6647,11 +6647,12 @@ sub qemu_use_old_bios_files { 
> $machine_type = $1; 
> $use_old_bios_files = 1; 
> } else { 
> + my $kvmver = kvm_user_version(); 
> # Note: kvm version < 2.4 use non-efi pxe files, and have problems when we 
> # load new efi bios files on migration. So this hack is required to allow 
> # live migration from qemu-2.2 to qemu-2.4, which is sometimes used when 
> # updrading from proxmox-ve-3.X to proxmox-ve 4.0 
> - $use_old_bios_files = !qemu_machine_feature_enabled ($machine_type, undef, 2, 4); 
> + $use_old_bios_files = !qemu_machine_feature_enabled ($machine_type, $kvmver, 2, 4); 
> } 
> 
> return ($use_old_bios_files, $machine_type); 



More information about the pve-devel mailing list