This release brings some features to ARM64 hosts. They get dedicated silicon-errata checks, a proper CPU details block, and architecture-aware filtering so x86 hosts no longer show ARM64 noise and vice-versa.
On the x86 side, MMIO Stale Data detection is now much more honest about end-of-life Intel CPUs that Intel never officially assessed, these are now reported as UNK (or VULN under --paranoid) instead of a misleading "not affected".
The tool now better detects guest environments and warns you that the microcode version reported by your hypervisor may be fake or stale, so the "up-to-date microcode" check can't be trusted from inside the guest.
Three speculation/security-relevant ARM64 errata families are now detected. As these are tracked by vendor erratum IDs rather than CVEs, a new CVE-0001-NNNN placeholder range has been reserved for vendor errata, along with a new --errata <number> selector (alongside --variant/--cve):
CPU affectedness is determined per-core from the (implementer, part, variant, revision) tuple in /proc/cpuinfo, matching the kernel code. Kernel mitigation detection relies on the per-erratum CONFIG_ARM64_ERRATUM_NNNN symbols, kernel image descriptor strings, and dmesg (no sysfs exists for these).
CVE_REGISTRY gains an optional fifth field tagging checks as x86-only or arm-only; untagged entries apply everywhere.--cve / --variant / --errata selection bypasses the check, so manual queries still run anywhere.--no-hw mode, the host CPU is ignored, supporting cross-arch offline analysis driven by --kernel/--config/--map.UNK (or VULN under --paranoid) instead of a misleading "not affected". This corrects the picture on kernels where sysfs wrongly says "Not affected" (pre-v6.0 and v6.16+) and aligns with the kernel's X86_BUG_MMIO_UNKNOWN set. The BSD path was corrected too: no BSD implements an MMIO mitigation, so affected CPUs now report VULN (with an explain rationale) rather than "not yet implemented".is_running_as_guest() detects VM guests (KVM, VMware, ESXi, Hyper-V, VirtualBox…) via the hypervisor CPUID flag in /proc/cpuinfo.system.guest_vm (bool), system.guest_vm_reason (string), and cpu_microcode.unreliable_in_vm (bool).check_cpu(): vendor, model name, implementer(s), part(s), architecture(s) and VM-guest status. Previously the x86-only early return left ARM hosts with no check_cpu() output at all.scripts/update_mcedb.sh (on test and source branches), so that the GitHub workflow can regenerate src/db/200_mcedb.sh daily.Please log in to add feedback.
This update has been submitted for testing by ganto.
This update's test gating status has been changed to 'ignored'.
This update has been pushed to testing.
This update has been submitted for stable by bodhi.
This update has been pushed to stable.