diff options
| author | 2026-05-29 11:18:14 +0100 | |
|---|---|---|
| committer | 2026-05-29 11:18:14 +0100 | |
| commit | e2a7a2fdb9ba66e777ec1a8c0d3c9301cc21bdab (patch) | |
| tree | 6db225142679c13ff43bed3ed1e29054aeb9cb8d /etc/kernel | |
| parent | 3be68c032c864fa98ed85e54ea5af19976c55ed7 (diff) | |
| download | dotfiles-e2a7a2fdb9ba66e777ec1a8c0d3c9301cc21bdab.tar.gz dotfiles-e2a7a2fdb9ba66e777ec1a8c0d3c9301cc21bdab.tar.bz2 dotfiles-e2a7a2fdb9ba66e777ec1a8c0d3c9301cc21bdab.zip | |
feat(suspend): hardened-only init_on_free=0 + hang-detection cmdline
Split the hardened UKI cmdline off the shared etc/kernel/cmdline.tmpl
so we can carry workarounds without poking the stock linux build.
Daily-driving linux-hardened on this hardware has reliably hung on
resume from S3: black screen, blinking caps-lock + power LED, only
the power button helps. The kernel journal stops at 'PM: suspend
entry (deep)' with nothing after, so the freeze is below the level
where logs can flush — characteristic of a hard hang inside a device
driver's suspend/resume callback rather than a userspace bug.
linux-hardened defaults init_on_free=1, which zeroes pages on free.
On Intel + iwlwifi/i915/nvme stacks this routinely surfaces latent
UAFs as suspend hangs that are invisible on stock linux. Drop that
knob to 0 for the hardened cmdline as the working hypothesis.
Add nmi_watchdog=panic, softlockup_panic=1, panic=10 so if the next
attempt still wedges, a stuck CPU self-panics and auto-reboots
within ~10s, giving us a 'journalctl -b -1 -k' trace to look at
instead of having to force-power-off blindly.
Stock linux is untouched.
Diffstat (limited to 'etc/kernel')
| -rw-r--r-- | etc/kernel/cmdline-linux-hardened.tmpl | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/etc/kernel/cmdline-linux-hardened.tmpl b/etc/kernel/cmdline-linux-hardened.tmpl new file mode 100644 index 0000000..d2e2973 --- /dev/null +++ b/etc/kernel/cmdline-linux-hardened.tmpl @@ -0,0 +1 @@ +rd.luks.name={{ output "lsblk" "-dno" "UUID" (printf "/dev/%s" .luksRootPartition) | trim }}=root root=/dev/mapper/root rw quiet init_on_free=0 nmi_watchdog=panic softlockup_panic=1 panic=10 |
