How to disable random freeze in Lenovo ThinkPad R61

Edit 13.2.2025: There is a bug in intel processor driver

https://bugzilla.kernel.org/show_bug.cgi?id=109051

Bug 109051 – cstates: intel_idle.max_cstate=1 required to prevent crashes

With newer kernels, R61 freezes randomly, and the reason is irq interrupt(s)

At first to get stay computer up, need to use irqpool option in grub´s boot line. Then when the coputer has booted up, /etc/default/grub need to edit as

GRUB_CMDLINE_LINUX_DEFAULT="noapic acpi_osi='Windows 2009' irqpool tsc=unstable tsc=noirqtime intel_idle.max_cstate=1 selinux=0"

sudo nano /etc/default/grub

…. edit, save and quit

Ctrl o
Ctrl x

…. update grub

sudo update-grub

##################################################################

EDIT! DISABLING IRQ can cause high CPU usage and freeze if disabling too many interrupts, so better not to use instruction on below

The next thing is to explore which causes many interrupts.

grep . /sys/firmware/acpi/interrupts/*

In R61 it looked as

/sys/firmware/acpi/interrupts/error: 0
/sys/firmware/acpi/interrupts/ff_gbl_lock: 0 EN enabled unmasked
/sys/firmware/acpi/interrupts/ff_pmtimer: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/ff_pwr_btn: 0 EN enabled unmasked
/sys/firmware/acpi/interrupts/ff_rt_clk: 0 disabled unmasked
/sys/firmware/acpi/interrupts/ff_slp_btn: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe00: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe01: 0 EN enabled unmasked
/sys/firmware/acpi/interrupts/gpe02: 3 EN enabled unmasked
/sys/firmware/acpi/interrupts/gpe03: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe04: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe05: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe06: 4 EN enabled unmasked
/sys/firmware/acpi/interrupts/gpe07: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe08: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe09: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe0A: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe0B: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe0C: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe0D: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe0E: 0 disabled unmasked
/sys/firmware/acpi/interrupts/gpe0F: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe10: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe11: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe12: 2694 EN enabled unmasked
/sys/firmware/acpi/interrupts/gpe13: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe14: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe15: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe16: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe17: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe18: 0 EN enabled unmasked
/sys/firmware/acpi/interrupts/gpe19: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe1A: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe1B: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe1C: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe1D: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe1E: 0 STS invalid unmasked
/sys/firmware/acpi/interrupts/gpe1F: 0 invalid unmasked
/sys/firmware/acpi/interrupts/gpe_all: 2701
/sys/firmware/acpi/interrupts/sci: 2701
/sys/firmware/acpi/interrupts/sci_not: 110618

Interrupt gpe06 seems to be a culprit, so it needed to disable via /etc/rc.local file

echo "disable" > /sys/firmware/acpi/interrupts/gpe06