Upstream proxmox-git/qemu-server state of the touched files before 167f3d70a5

This commit is contained in:
upstream committed 2026-09-26 08:41:15 +00:00
1 parent 5021bad460
commit 0e162cc4f4
2 files changed
+72 -3

No files matched your search

+12 -3
View File
@@ -438,7 +438,16 @@ sub config {
# > specify a policy other than default
my $policy = $numa->{policy};
die "you need to define a policy for hostnode $hostnodes\n" if !$policy;
$mem_object .= ",host-nodes=$hostnodes,policy=$policy";
# QEMU splits object options at commas, so each range needs its own host-nodes key
my $host_node_ranges = join(
',host-nodes=',
map {
my ($start, $end) = @$_;
defined($end) ? "$start-$end" : $start
} @$hostnodelists,
);
$mem_object .= ",host-nodes=$host_node_ranges,policy=$policy";
} else {
die "numa hostnodes need to be defined to use hugepages" if $conf->{hugepages};
}
@@ -518,7 +527,7 @@ sub print_numa_hostnodes {
my $hostnodes;
foreach my $hostnoderange (@$hostnodelists) {
my ($start, $end) = @$hostnoderange;
$hostnodes .= ',' if $hostnodes;
$hostnodes .= ',' if defined($hostnodes);
$hostnodes .= $start;
$hostnodes .= "-$end" if defined($end);
$end //= $start;
@@ -640,7 +649,7 @@ sub hugepages_topology {
my $hostnodes = print_numa_hostnodes($hostnodelists);
die "more than 1 hostnode value in numa node is not supported when hugepages are enabled"
if $hostnodes !~ m/^\d+$/;
if $hostnodes !~ m/^(\d)$/;
my $hugepages_size = hugepages_size($conf, $numa_memory);
$hugepages_topology->{$hugepages_size}->{$hostnodes} +=
hugepages_nr($numa_memory, $hugepages_size);