Anyone who has owned an x220 knows it has two majors flaws: the screen resolution and the high pitched fan. Lenovo released several bios updates to help the fan situation out, but at the end of the day it can still be very annoying when the machine is under load. I've found that bypassing speeds 2/3 keeps the high pitched noise at bay.

I recently upgraded my Thinkpad x220 to 3.9.3 and realized that my Thinkfan configuration was not working anymore. Thankfully it was defaulting the fan to "auto" so I didn't risk the laptop overheating. The basic issue was the sensor location randomly changes on boot. Previously it was always located at /sys/class/hwmon/hwmon0/temp1_input; Now it switches between /sys/class/hwmon/hwmon0/temp1_input and /sys/class/hwmon/hwmon0/temp1_input/sys/class/hwmon/hwmon1/temp1_input (note hwmon1 vs hwmon0) depending on the day. This happens on boot and I do not understand why.

I did not have time to dig into the issue, so I put together two configurations for thinkfan and just switch them on boot: