u/Nightcry15

▲ 22 r/TerraMaster+1 crossposts

Fixed Constant Hard Freezes & Overnight Lock-ups on Terramaster F4-424 / Intel N95 running TrueNAS SCALE (C-State / Power Governor Bug)

Hey everyone,

I wanted to share a major breakthrough I just had after months of hair-pulling, troubleshooting, and testing. If you are running TrueNAS SCALE on lower-power Intel Alder Lake-N95 (or N100) processors—specifically pre-built setups like the Terramaster F4-424—and experiencing random hourly/daily hard freezes or overnight lock-ups, this is highly likely your issue and your fix.

The Setup:

  • NAS: Terramaster F4-424
  • CPU: Intel N95 (4 Cores)
  • OS: TrueNAS SCALE (v25.04.2.6)
  • RAM: 16GB (Single stick—waiting out the current RAM pricing insanity before buying a second!)
  • Storage: 2x NVMe drives (Boot + App-Data), 4x HDDs (Data Pool)

The Symptom:

The server would completely freeze up. Not just a web UI drop—total networking dead, SSH completely unresponsive, and a frozen screen if a monitor was plugged into it directly. There were absolutely zero error logs, core dumps, or kernel panics written to journalctl because the host processor was stalling silently, usually during low-utilization windows or overnight when the system sat completely idle.

The Problem:

The Intel N95 has a known hardware/firmware interaction bug on modern Linux kernels when transitioning into deep power-saving idle sleep states (specifically C6/C8/C10). When the CPU tries to drop its power consumption down or wake back up from these deep states, the internal voltage drops past a stable threshold, instantly locking the processor state machine.

A common workaround online suggests forcing the CPU scaling governor to Performance, but this forces the CPU clock cycles to stay pinned higher than necessary, wasting power and causing unnecessary heat when the NAS is sitting idle.

The Real Fix (C-State Limiting):

The true, precise engineering fix is to leave your system scaling governor on its optimized powersave profile, but explicitly tell the Linux kernel to limit how deep the CPU can sleep. Capping the idle states to C1E preserves perfect system stability while still allowing the CPU to scale its active clock frequencies all the way down during zero-load periods.

Because TrueNAS SCALE is an appliance, manual edits to /etc/default/grub can be wiped during standard system updates. The correct and safe way to apply this parameter permanently is using TrueNAS's built-in middlewared configuration utility via the shell.

How to apply it:

  1. SSH into your TrueNAS box (or open the Web Shell) as admin and elevate to root (sudo -i).
  2. Run this command to natively append the parameter to the TrueNAS kernel options database: Bashmidclt call system.advanced.update '{"kernel_extra_options": "intel_idle.max_cstate=1"}'
  3. Regenerate your active GRUB boot configuration with the newly embedded setting: Bash/usr/local/bin/truenas-grub.py
  4. Reboot your NAS.

How to verify it's working:

Once the system comes back up, you can run this loop in the shell to check your core idle stats:

Bash

for dir in /sys/devices/system/cpu/cpu0/cpuidle/state*/; do echo -n "$(basename $dir): $(cat ${dir}name) -> Usage: "; cat ${dir}usage; done

You should notice that your usage counts are concentrated entirely in state0 (POLL) and state1 (C1E), and the deeper, unstable states (state2/C6, etc.) will completely vanish from the loop.

Meanwhile, if you check your scaling governor, it will still report a safe and efficient powersave.

Since switching to this specific C-state limit, my server uptime has been absolutely pristine, and the overnight crashes have completely vanished without sacrificing the power efficiency of the Terramaster hardware. Hopefully, this saves someone else months of debugging! Let me know if you’ve run into this on your low-power boxes.

reddit.com
u/Nightcry15 — 3 days ago