Mis-count of CPUs
On start-up Tor v0.2.3.25/Linux says:
"[notice] Wow! I detected that you have 64 CPUs. I will not autodetect any more than 16, though. If you want to configure more, set NumCPUs in your torrc"
This is in a CentOS6/OpenVZ VPS with only a single virtual CPU. Tor config param NumCPUs is not used.
It turns out that OpenVZ, since version rhel6/042stab061.2, lists all the host CPUs in /sys/devices/system/cpu/. It is this number of processors that is returned by the sysconf(_SC_NPROCESSORS_CONF) that Tor uses in ~/tor-0.2.3.25/src/common/compat.c to determine CPU count.
From the command line:
getconf _NPROCESSORS_ONLN
1
Programmatically:
$ /tmp/main sysconf() says: 64 Wow, too many CPUs: 64
I know that there's not much you can do about a sysconf() that lies. I want to get this on the record, though, for the sake of Tor's future auto-scaling.
Trac:
Username: tmpname0901