What's the schedule class and priority of kipmi0 supposed to be?
I checked some servers and the ps output of kipmi0 was:
STARTED USER PID PPID PGID TT TID %MEM %CPU VSZ CLS NI PRI STAT WCHAN COMMAND
Nov 03 root 52 2 0 ? 52 0.0 0.0 0 TS 19 0 SN ipmi_thread \_ [kipmi0]
Seems the kipmi0 kernel thread should be TS schedule which means SCHED_OTHER.
While for one of my server(Redhat5.x 2.6.18-238.el5), it's RR which means SCHED_RR:
STARTED USER PID PPID PGID TT TID %MEM %CPU VSZ CLS NI PRI STAT WCHAN COMMAND
Dec 04 root 1755 79 1 ? 1755 0.0 0.6 0 RR - 139 SN ? \_ [kipmi0]
Does anyone know any factor which may cause such situation?
Answer to my own question:
The default schedule class of Kipmi is TS while it could be changed by
chrt
. We just find out this command from an product initial script:chrt -p --rr 99 $pid_of_kipmi
It's added for some reason, and regarding our finial solution,
echo 100 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
cat /etc/modprobe.d/ipmi.conf
options ipmi_si kipmid_max_busy_us=100