analyze: introduce cpu-features command

This may be useful when configuring the ConditionCPUFeature= setting.
This commit is contained in:
Yu Watanabe
2026-09-23 12:51:26 +09:00
parent ef3e0ff7bb
commit 724d18a22a
11 changed files with 203 additions and 2 deletions
+30
View File
@@ -224,6 +224,12 @@
<arg choice="plain">architectures</arg>
<arg choice="opt" rep="repeat"><replaceable>NAME</replaceable></arg>
</cmdsynopsis>
<cmdsynopsis>
<command>systemd-analyze</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
<arg choice="plain">cpu-features</arg>
<arg choice="opt" rep="repeat"><replaceable>NAME</replaceable></arg>
</cmdsynopsis>
<cmdsynopsis>
<command>systemd-analyze</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
@@ -1159,6 +1165,30 @@ x86-64 native</programlisting>
</example>
</refsect2>
<refsect2>
<title><command>systemd-analyze cpu-features <optional><replaceable>NAME</replaceable>...</optional></command></title>
<para>Lists all known CPU features for the system's CPU architecture, indicating which of them are
supported. The listed feature names are those understood by <varname>ConditionCPUFeature=</varname>;
see <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
for details. If one or more feature names are specified, only those are listed.</para>
<para>The command is currently supported only on arm64, x86, and x86_64 systems.</para>
<example>
<title>Table output on an x86_64 system</title>
<programlisting>$ systemd-analyze cpu-features
NAME SUPPORT
abm ✓
adx ✓
aes ✓
apic ✓
avx ✓
avx2 ✓
…</programlisting>
</example>
</refsect2>
<refsect2>
<title><command>systemd-analyze smbios11</command></title>
+5
View File
@@ -2058,6 +2058,11 @@
among others. For the full list, see the documentation on
<ulink url="https://docs.kernel.org/arch/arm64/elf_hwcaps.html">ARM64 ELF hwcaps</ulink>.</para>
<para>See
<citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
<command>cpu-features</command> command for the complete list of known CPU features for the system.
</para>
<para>To avoid ambiguities in mixed-architecture fleets, the value can be prefixed
with the architecture name using the form <literal>ARCH.FEATURE</literal>. If the
architecture prefix does not match the running system, the condition evaluates