Initial commit: NAS backup, NFS mount docs, NVMe fix docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# NVMe Freeze Fix Plan — Kingston SNV2S2000G
|
||||
|
||||
## Problem
|
||||
System freezes and SSHD becomes unresponsive due to NVMe I/O write timeouts.
|
||||
The Kingston SNV2S2000G firmware fails to wake from deep power states (PS3/PS4) in time,
|
||||
causing the kernel to abort I/O operations and eventually hard-lock the system.
|
||||
|
||||
- 152 NVMe I/O timeout errors logged in previous boot (Feb 17-20)
|
||||
- 1 NVMe controller reset (Feb 19 09:41)
|
||||
- 52 unsafe shutdowns (hard power-offs from freezes)
|
||||
- SMART health: PASSED — drive is not failing, firmware power management is the issue
|
||||
|
||||
## Root Cause
|
||||
NVMe Autonomous Power State Transition (APST) puts the drive into PS3/PS4.
|
||||
Exit latencies (5ms / 70ms) exceed what the firmware can reliably handle,
|
||||
causing write and flush operations to time out.
|
||||
|
||||
## Fix: Disable Deep NVMe Power States
|
||||
|
||||
### Step 1 — Apply kernel parameter
|
||||
|
||||
Run with sudo in a terminal:
|
||||
|
||||
```bash
|
||||
sudo sed -i 's|rootfstype=btrfs|rootfstype=btrfs nvme_core.default_ps_max_latency_us=5000|' /boot/limine.conf
|
||||
```
|
||||
|
||||
### Step 2 — Verify the change
|
||||
|
||||
```bash
|
||||
grep nvme_core /boot/limine.conf
|
||||
```
|
||||
|
||||
Every `cmdline:` line should now end with `nvme_core.default_ps_max_latency_us=5000`.
|
||||
|
||||
### Step 3 — Reboot
|
||||
|
||||
```bash
|
||||
sudo reboot
|
||||
```
|
||||
|
||||
### Step 4 — Confirm after reboot
|
||||
|
||||
```bash
|
||||
# Verify kernel parameter is active
|
||||
cat /proc/cmdline | grep nvme_core
|
||||
|
||||
# Monitor for NVMe errors (should show nothing new)
|
||||
journalctl -b -k | grep -i 'nvme.*timeout'
|
||||
```
|
||||
|
||||
## Monitoring
|
||||
|
||||
Watch for recurrence over the next few days:
|
||||
|
||||
```bash
|
||||
# Check for any NVMe timeouts in current boot
|
||||
journalctl -b -k | grep -i 'nvme.*timeout'
|
||||
|
||||
# Check SMART data periodically
|
||||
sudo smartctl -a /dev/nvme0
|
||||
```
|
||||
|
||||
## If Freezes Continue
|
||||
|
||||
1. Try a stricter latency limit: change `5000` to `0` (disables all power state transitions)
|
||||
2. Check for Kingston firmware updates for SNV2S2000G (current: SBK00104)
|
||||
3. If nothing helps, the drive may need replacement despite passing SMART checks
|
||||
|
||||
## Drive Info
|
||||
- Model: KINGSTON SNV2S2000G (2TB)
|
||||
- Serial: 50026B7784F6ACF9
|
||||
- Firmware: SBK00104
|
||||
- Percentage Used: 5%
|
||||
- Bootloader: Limine
|
||||
- Config: /boot/limine.conf
|
||||
Reference in New Issue
Block a user