Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
FACT 3.6.9
-
None
-
Linux debian jessie 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux
puppet-agent 1.10.10-1jessie
facter 3.6.9
-
Night's Watch
-
3
-
2019-12-11, 2019-12-24
-
Needs Assessment
-
Bug Fix
-
Facter incorrectly reported disabled CPU cores as physical CPU cores. Now, Facter correctly reports physical and logical CPUs and ignores disabled CPUs.
-
Needs Assessment
Description
Facter does count offline cpus as physical cpus in addition to the real sockets. To see this behaviour log on to a machine with 2 physical cpus and start disabling single logical cores like
echo "0" > /sys/devices/system/cpu/cpu19/online
With every disabled core, the physical cpu count reported by facter is incremented. This seems to be caused by the id.empty() condition in processor_resolver::compute_cpu_counts.
The code retrieves the id from .../topology/physical_package_id which is missing if a core is disabled, leading to an empty id.