Check out my first novel, midnight's simulacra!
Bogon kernel command line options: Difference between revisions
(Created page with "'''dankblog! 2022-03-12, 1842 EDT, at the danktower''' i was looking at my dmesg output today, wanting to know something about IOMMU, and noticed the following line: <tt>[ 0.015134] Unknown kernel command line parameters "BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2 mem_encrypt=off intel_iommu=on", will be passed to user space </tt> first off, some basic [https://man7.org/linux/man-pages/man7/kernel-command-line.7.html kernel command line] fa...") |
No edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''[[Dankblog|dankblog!]] 2022-03-12, 1842 | '''[[Dankblog|dankblog!]] 2022-03-12, 1842 EST, at [[Viewpoint|the danktower]]''' | ||
i was looking at my dmesg output today, wanting to know something about [[IOMMU]], and noticed the following line: | i was looking at my dmesg output today, wanting to know something about [[IOMMU]], and noticed the following line: | ||
Line 16: | Line 16: | ||
</ul> | </ul> | ||
''' | but unrecognized items get this informational line. let's take a look at them: | ||
<ul> | |||
<li><tt>BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2</tt> this is set by [https://www.gnu.org/software/grub/ GRUB] since 1.91, released 2005-10-15. i'm not sure why, or who consumes it. LILO set this parameter as well, and this might have just been a compatibility thing, so it might be lost in the river of time.</li> | |||
<li><tt>mem_encrypt=off</tt> this refers to AMD's [https://en.wikichip.org/wiki/x86/sme Secure Memory Encryption] extension, allowing per-page transparent encryption. i've got this disabled in my kernel config now (<tt>CONFIG_AMD_MEM_ENCRYPT</tt>), so it's no longer recognized. i've removed it.</li> | |||
<li><tt>intel_iommu=on</tt> well duh i don't have an intel in [[Schwarzgerat_III|this machine]]. i want <tt>iommu=pt iommu=1</tt></li> | |||
</ul> | |||
the rest of my command line appears to be valid (inspected at <tt>/proc/cmdline</tt>): | |||
<tt>BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2 root=UUID=939be09a-b63d-403c-996a-8b9866313fbb ro mem_encrypt=off psi=0 acpi_enforce_resources=lax intel_iommu=on</tt> | |||
<tt>psi=0</tt> refers to the Pressure Stall Information feedback system introduced in 2018 by Facebook hackers, which you can read about [https://www.kernel.org/doc/html/latest/accounting/psi.html here] or [https://lwn.net/Articles/764761/ here]. <tt>acpi_enforce_resources=lax</tt> is sadly necessary to control my bling-ass LEDs using [https://openrgb.org/ OpenRGB]. | |||
anyway, i wasn't aware of this dmesg output (added on [https://lore.kernel.org/lkml/20210511211009.42259-1-ahalaney@redhat.com/ 2021-05]), but it seems a useful bit of diagnostics. unfuck your kernel command line! | |||
the only crappy element is the low visibility. ideally, a systemd oneshot unit would deliver a potent shock to the operator when this message was detected. constant vigilance! | |||
'''previously: "[[On_the_Effectiveness_of_nonnull|on the effectiveness of nonnull]]" 2021-11-05''' | |||
[[Category:Blog]] | [[Category:Blog]] |
Latest revision as of 00:31, 13 March 2022
dankblog! 2022-03-12, 1842 EST, at the danktower
i was looking at my dmesg output today, wanting to know something about IOMMU, and noticed the following line:
[ 0.015134] Unknown kernel command line parameters "BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2 mem_encrypt=off intel_iommu=on", will be passed to user space
first off, some basic kernel command line facts:
- there's a man page, of course: kernel-command-line(7). many options are explained in bootparam(7)
- an option is prefixed with modname. if it's intended for a module (whether that code has been built as a module, or built into the kernel)
- options can be specified in modprobe.d(5), but this only works if the code was actually built as a module
- any unrecognized parameter, and any parameter following "--", is passed to init
- parameters containing a "=" go into init's environment
- hyphens and underscores are equivalent
but unrecognized items get this informational line. let's take a look at them:
- BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2 this is set by GRUB since 1.91, released 2005-10-15. i'm not sure why, or who consumes it. LILO set this parameter as well, and this might have just been a compatibility thing, so it might be lost in the river of time.
- mem_encrypt=off this refers to AMD's Secure Memory Encryption extension, allowing per-page transparent encryption. i've got this disabled in my kernel config now (CONFIG_AMD_MEM_ENCRYPT), so it's no longer recognized. i've removed it.
- intel_iommu=on well duh i don't have an intel in this machine. i want iommu=pt iommu=1
the rest of my command line appears to be valid (inspected at /proc/cmdline):
BOOT_IMAGE=/boot/vmlinuz-5.16.13nlb2 root=UUID=939be09a-b63d-403c-996a-8b9866313fbb ro mem_encrypt=off psi=0 acpi_enforce_resources=lax intel_iommu=on
psi=0 refers to the Pressure Stall Information feedback system introduced in 2018 by Facebook hackers, which you can read about here or here. acpi_enforce_resources=lax is sadly necessary to control my bling-ass LEDs using OpenRGB.
anyway, i wasn't aware of this dmesg output (added on 2021-05), but it seems a useful bit of diagnostics. unfuck your kernel command line!
the only crappy element is the low visibility. ideally, a systemd oneshot unit would deliver a potent shock to the operator when this message was detected. constant vigilance!
previously: "on the effectiveness of nonnull" 2021-11-05