[pve-devel] [PATCH guest-common v7 1/2] mapping: pci: check the mdev configuration on the device too

Dominik Csapak d.csapak at proxmox.com
Thu Apr 3 11:43:08 CEST 2025


On 4/3/25 11:40, Thomas Lamprecht wrote:
> Am 11.03.25 um 14:20 schrieb Dominik Csapak:
>> but that lives int he 'global' part of the mapping config, not in a
>> specific mapping. To check that, add it to the $configured_props from
>> there.
>>
>> this requires all call sites to be adapted otherwise the check will
>> always fail for devices that are capable of mediated devices
> 
> But that's not true, or? As the check only happens if the $cluster_mapping_cfg
> param is passed, which call-sites need to do first?
> 

true, I think the commit message is outdated. I faintly remember changing
the semantic at some point but probably forgot to update the commit message.

>>   # checks if the given config is valid for the current node
>>   sub assert_valid {
>> -    my ($name, $mapping) = @_;
>> +    my ($name, $mapping, $cluster_mapping_cfg) = @_;
> 
>                              ^-  new param here
> 
>>   
>>       my @paths = split(';', $mapping->{path} // '');
>>   
>> @@ -161,6 +161,12 @@ sub assert_valid {
>>   
>>   	my $configured_props = { $mapping->%{qw(id iommugroup subsystem-id)} };
>>   
>> +	# check mdev from globabl mapping config, if that is given
>> +	if (defined($cluster_mapping_cfg)) {
> 
> guarded witch check for defindness here
> 
>> +	    $expected_props->{mdev} = $info->{mdev} ? 1 : 0;
>> +	    $configured_props->{mdev} = $cluster_mapping_cfg->{mdev} ? 1 : 0;
>> +	}
>> +
>>   	for my $prop (sort keys $expected_props->%*) {
>>   	    next if $prop eq 'iommugroup' && $idx > 0; # check iommu only on the first device
>>   
> 





More information about the pve-devel mailing list