Gigabyte GA-7TESM Motherboard and NAS Killer v2 Users Rejoice! Permanent Solution to Disable IPMI Fan Sensors to Fix CPU_FAN/SYS_FAN Event Error Log
Problem:
Installing PWM Fans on a Gigabyte GA-7TESM Motherboard causes sensor assertion error events which results in the log file becoming so full that it won’t boot and requires clearing via the ipmi interface or bios.
Solution:
[Ubuntu 20.04.1 LTS x86_64]
Installing freeipmi-tools allows you to permanently disable all system event messages for a given fan sensor, even across reboots.
Install freeipmi-tools. This will allow you to view/edit the ipmi sensor settings.
sudo apt install freeipmi-tools
List all of the sensors available and their current settings. This is a long list and may take a moment.
sudo ipmi-sensors-config --checkout
Save the sensor list to a file (I used the filename “sensor-data1.conf” because that’s the name used in the man page examples).
sudo ipmi-sensors-config --checkout --filename=sensor-data1.conf
Edit the file with your editor of choice.
sudo nano sensor-data1.conf
Find the fan sensor sections and change the value of “Enable_All_Event_Messages” from “Yes” to “No” for each sensor that is showing errors in your Event Log.
Section 27_CPU1_FAN
## Possible values: Yes/No
Enable_All_Event_Messages No
Section 28_CPU2_FAN
## Possible values: Yes/No
Enable_All_Event_Messages No
Section 29_SYS_FAN1
## Possible values: Yes/No
Enable_All_Event_Messages No
Section 29_SYS_FAN2
## Possible values: Yes/No
Enable_All_Event_Messages No
Section 29_SYS_FAN3
## Possible values: Yes/No
Enable_All_Event_Messages No
Section 29_SYS_FAN4
## Possible values: Yes/No
Enable_All_Event_Messages No
Save the file and exit your editor.
Commit the changes using the file you just edited(“sensor-data1.conf”)
sudo ipmi-sensors-config --commit --filename=sensor-data1.conf
This will permanently fix the log from filling up with assertion errors, even through a reboot.
Setting Enable_All_Event_Messages to No disables ALL events from that sensor but there are other variables available in each sensor section if you would like to fine-tune your setup by modifying specific events, such as Enable_Assertion_Event_Lower_Non_Critical_Going_Low, etc.
Example Sensor Section:
Section 28_CPU1_FAN
## Possible values: Yes/No
Enable_All_Event_Messages No
## Possible values: Yes/No
Enable_Scanning_On_This_Sensor Yes
## Possible values: Yes/No
Enable_Assertion_Event_Lower_Non_Critical_Going_Low Yes
## Possible values: Yes/No
Enable_Assertion_Event_Lower_Critical_Going_Low Yes
## Possible values: Yes/No
Enable_Deassertion_Event_Lower_Non_Critical_Going_Low Yes
## Possible values: Yes/No
Enable_Deassertion_Event_Lower_Critical_Going_Low Yes
## Give valid input for sensor type = Fan; units = RPM
Lower_Non_Critical_Threshold 1200.000000
## Give valid input for sensor type = Fan; units = RPM
Lower_Critical_Threshold 1600.000000
## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
Positive_Going_Threshold_Hysteresis None
## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
Negative_Going_Threshold_Hysteresis None