X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=src%2FPVE%2FCpuSet.pm;h=753b3cdec4cac5edc64a251ef9f464593cb034bb;hb=7e1ee743f49add696a0a1f6773a9a847f737d9fd;hp=4004bb3bab1a620f137068f279e03982447bf77e;hpb=284dca701b3461cd41efe52c1c395a9a7a42095b;p=pve-common.git diff --git a/src/PVE/CpuSet.pm b/src/PVE/CpuSet.pm index 4004bb3..753b3cd 100644 --- a/src/PVE/CpuSet.pm +++ b/src/PVE/CpuSet.pm @@ -3,8 +3,20 @@ package PVE::CpuSet; use strict; use warnings; use PVE::Tools; +use PVE::ProcFSTools; -our $MAX_CPUID = 256; # should be enough for the next years +my $MAX_CPUID; + +sub max_cpuid { + + return $MAX_CPUID if defined($MAX_CPUID); + + my $cpuinfo = PVE::ProcFSTools::read_cpuinfo(); + + $MAX_CPUID = $cpuinfo->{cpus} || 1; + + return $MAX_CPUID; +} sub new { my ($this) = @_; @@ -12,7 +24,9 @@ sub new { my $class = ref($this) || $this; my $self = bless { members => {} }, $class; - + + max_cpuid() if !defined($MAX_CPUID); # initialize $MAX_CPUID + return $self; }