The powertop
command requires the msr
kernel module. The mention of CONFIG_X86_MSR
in the error message is a reference to a kernel configuration option. On my Ubuntu system it is defined as follows:
CONFIG_X86_MSR=m
which means that it is configured as a kernel module. When I run powertop my msr
kernel module is loaded automatically. A value of y
rather than m
would compile msr
directly into the kernel, while a value of n
would disable it altogether.
You should be able to determine the value of CONFIG_X86_MSR
on your Ubuntu system by looking in the correct /boot/config-*
file. For example, on my Ubuntu system the relevant file is /boot/config-4.4.0-31-generic
. If you have more than one such file the output of uname -r
should tell you which one corresponds to your running kernel.
One place to start is to determine the value of CONFIG_X86_MSR
. If you didn't build a custom kernel m
is a likely value for that. If the value is n
you'll probably need to build a new kernel configured differently, or boot a stock kernel with CONFIG_X86_MSR
enabled (with either y
or m
). If the value is m
, you should check whether the msr
is loaded. If it isn't loaded, modprobe msr
should load it, if it's installed properly.
One other thing worth checking is whether your running kernel corresponds to the newest installed kernel. If your kernel was upgraded without a subsequent reboot, that might prevent the msr
module from loading properly.