It also happens with the intel_cpufreq CPU frequency scaling driver (i.e. the intel_pstate driver in passive mode), and all governors. It also happens with the acpi-cpufreq CPU frequency scaling driver, and all governors. However the manifestations of the incorrectly reported scaling_cur_freq can be anywhere from wrong to correct.
Example 1: 100% load on all 12 CPUs; acpi-cpufreq; schedutil:
Yes, this happens also with the mainline kernel.
It also happens with the intel_cpufreq CPU frequency scaling driver (i.e. the intel_pstate driver in passive mode), and all governors. It also happens with the acpi-cpufreq CPU frequency scaling driver, and all governors. However the manifestations of the incorrectly reported scaling_cur_freq can be anywhere from wrong to correct.
Example 1: 100% load on all 12 CPUs; acpi-cpufreq; schedutil:
doug@s19:~$ grep . /sys/devices/ system/ cpu/cpu* /cpufreq/ scaling_ cur_freq system/ cpu/cpu0/ cpufreq/ scaling_ cur_freq: 4800005 system/ cpu/cpu10/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu11/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu1/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu2/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu3/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu4/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu5/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu6/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu7/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu8/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu9/ cpufreq/ scaling_ cur_freq: 4101000
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
except for CPU 0, which seems to be reporting as is it is using a different driver, the results are correct.
Example 2: 100% load on CPU 4 only; acpi-cpufreq; ondemand:
doug@s19:~$ grep . /sys/devices/ system/ cpu/cpu* /cpufreq/ scaling_ cur_freq system/ cpu/cpu0/ cpufreq/ scaling_ cur_freq: 4799876 system/ cpu/cpu10/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu11/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu1/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu2/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu3/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu4/ cpufreq/ scaling_ cur_freq: 4101000 system/ cpu/cpu5/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu6/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu7/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu8/ cpufreq/ scaling_ cur_freq: 800000 system/ cpu/cpu9/ cpufreq/ scaling_ cur_freq: 800000
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
/sys/devices/
Again, except for CPU 0, the results are correct.