Few days ago one client called and asked about high CPU load on his Fedora server…
It was very easy to detect that CPU is consumed by kipmi0 process. Unfortunately classic commands kill, pkill, kill -9, … didn’t help.
The problem was in loaded modules (lsmod command)
ipmi_si 38349 0
ipmi_msghandler 32665 1 ipmi_si
I didn’t have enough time to investigate about this but simple rmmod ipmi_msghandler and rmmod ipmi_si was enough to solve this problem. Well I was wrong that this will solve the problem… After reboot it was all like before… The modules are still here and kipmi0 process was too aggressive…
Searching on Google about this problem didn’t help a lot. After some digging, I found out that the lm_sensors is responsible for loading these modules.
nano /etc/sysconfig/lm_sensors gave me the answer. At the end, there are few lines
MODULE_0=ipmi-si MODULE_1=ipmisensors MODULE_2=coretemp |
Commenting those lines was enough to solve this problem. I suppose that this server is too old (Fedora 6) and some incompatibility exists between hardware platform and those modules…
If you have any info about this problem, please drop a comment so we can all learn something…
The Kipmi0 process may show increased CPU uitlization in Linux.The utilization
may increase upto 100% when the IPMI(Intellegent Platform Management Interface)
device such as MBC ( Baseboard Management Controller) or IMM (Integrated Management Module) is busy or non-responsive
for this no Fix is required as it has no impact on actual system performance
Yes, kipmi0 is really running witn nice value of 19. So it does not impact system performance. It’s safe just to ignore it.
I occasionally see this kipmi0 cpu hog problem on a dual 8-core Intel Xeon
“Sandy Bridge” workstation running 64-bit Ubuntu 12.04LTS. I’m not an expert on
these matters, but I’ll bet that it does impact system performance, in at least two ways:
1. The cpu core running kipmi0 will still generate heat and consume power.
2. The “Sandy Bridge” cpus have “turbo” mode, which will rev up the clocks
automatically if possible depending on various conditions including the
temperature. So a core that is 100% busy running kipmi0 will probably
negatively affect turbo mode (I haven’t tried to measure this effect).
The workaround I found is to do the following;
echo 100 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
This limits kipmi0 to only be allowed to use 10% CPU, you can play around and lower the values more if you still think this is too high.
Add it to your /etc/rc.local so it runs on boot.
Jack