[pve-devel] [PATCH qemu-server v3 07/10] pci: set 'enable-migration' to on for live-migration marked mapped devices

Fiona Ebner f.ebner at proxmox.com
Fri May 31 14:56:54 CEST 2024


Am 19.04.24 um 14:45 schrieb Dominik Csapak:
> the default is 'auto', but for those which are marked as capable for
> live migration, we want to explicitly enable that, so we get an early
> error on start if the driver does not support that.
> 
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
> ---
>  PVE/QemuServer/PCI.pm | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/PVE/QemuServer/PCI.pm b/PVE/QemuServer/PCI.pm
> index 6ba43ee8..df2ea3eb 100644
> --- a/PVE/QemuServer/PCI.pm
> +++ b/PVE/QemuServer/PCI.pm
> @@ -435,8 +435,11 @@ sub parse_hostpci {
>  	my $devices = PVE::Mapping::PCI::get_node_mapping($config, $mapping, $node);
>  	die "PCI device mapping not found for '$mapping'\n" if !$devices || !scalar($devices->@*);
>  
> +	my $cfg = $config->{ids}->{$mapping};
> +	$res->{'live-migration-capable'} = 1 if $cfg->{'live-migration-capable'};
> +
>  	for my $device ($devices->@*) {
> -	    eval { PVE::Mapping::PCI::assert_valid($mapping, $device, $config->{ids}->{$mapping}) };
> +	    eval { PVE::Mapping::PCI::assert_valid($mapping, $device, $cfg) };


This hunk belongs in patch 03/10

>  	    die "PCI device mapping invalid (hardware probably changed): $@\n" if $@;
>  	    push $alternatives->@*, [split(/;/, $device->{path})];
>  	}
> @@ -635,6 +638,10 @@ sub print_hostpci_devices {
>  		$devicestr .= ",host=$pcidevice->{id}";
>  	    }
>  
> +	    if ($d->{'live-migration-capable'}) {
> +		$devicestr .= ",enable-migration=on"
> +	    }
> +
>  	    my $mf_addr = $multifunction ? ".$j" : '';
>  	    $devicestr .= ",id=${id}${mf_addr}${pciaddr}${mf_addr}";
>  




More information about the pve-devel mailing list