[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 0/4] Add Kconfig option to remove microcode loading support


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Alejandro Vallejo <alejandro.garciavallejo@xxxxxxx>
  • Date: Wed, 12 Nov 2025 17:22:13 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0)
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=4Loe3auNsQGtsQe4VcnZlToVD2AT8r0kPmm2eVxOlhk=; b=clog8pkVJjIrb7UJ8xkvSeSNSIRyWTmcSYCyTue3Tkyq0Q2PDxoE49LkVePELQ0t28ThUauzL34do1hg10HMR0qFdTLZ+2iJZwbXAD5QC5+qp4Hg4Pkawc29eV/03LVH9El6oL/z6GWwuCwVoCddqHqcJemkibyc4VAR69H7y9Jw7NL5yhio1Ga2TBbfUZPSiAFTScqgfpInd+YWydEvwGcS8Wzeon3SwgljbHWcmAcr0avARg10fjUyeleVlZoBzIyLbBrulFFv7eXMzKbXtjCvpcX2GrBRwfSdEfV+co+wnwCDHMK8MykvD0IgegB3Ip2G3SaoJOAKB/O9buIeTg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dWoddzX0nL/RtPDkX4fGkha15irCHr8QiqGhyb9X9InBHYZktYCybDYm+W3D3RxOZIAFZlbs5F58XM/tu/56tdxFW6FpLBJPTeIH57Mp0TtqoyFc8ZP0dUQ6TlSulq6uUrQblJazJ4zfAa1pdsEnQkiK3Mr29VMGpMwrwuGknbd9H8IJrDJ1Wvp7dgtyjrHeU4OUXeeOyamRShuZ4yTZx6MdV3AmfEbp3uRJ0dQpQ2fL2h8kZDo2SgHWCnrJchQC1/iiL5URleS6wKHSYMip5U3jUds0QXQO/p6eAZ2N5q/ze7MJlD9rf5lA3dAemE1xNVBqS7uhfMURM7jCY+Sggg==
  • Cc: Alejandro Vallejo <alejandro.garciavallejo@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>, Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 12 Nov 2025 16:22:48 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Hi,

The series is mostly a refactor between everything needed to load microcode and
the bare minimum to probe the current microcode revision.

The Kconfig option keeps the reading of microcode rev data around, as it's very
relevant for security and debuggability in order to deduce which erratas apply
to the current platform.

The idea is to move everything that must still be compiled with !CONFIG_UCODE
onto {,amd-,intel-}base.c, then remove everything else conditionally at the
Makefile level.

Renaming files (e.g: s/base/core/ and s/core/common/) would better reflect
post-series reality, but it'd be annoying for later backports in this general
area.

Cheers,
Alejandro

Alejandro Vallejo (4):
  x86: Split out AMD-specific code to be executed without ucode loading
  x86: Split out Intel-specific code to be executed without ucode
    loading
  x86: Split out early_microcode_load() and microcode_load_one()
  x86: Add Kconfig option to disable microcode loading

 xen/arch/x86/Kconfig                    | 12 ++++
 xen/arch/x86/cpu/microcode/Makefile     |  9 ++-
 xen/arch/x86/cpu/microcode/amd-base.c   | 55 +++++++++++++++++++
 xen/arch/x86/cpu/microcode/amd.c        | 55 ++-----------------
 xen/arch/x86/cpu/microcode/amd.h        | 15 +++++
 xen/arch/x86/cpu/microcode/base.c       | 73 +++++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/core.c       | 58 +-------------------
 xen/arch/x86/cpu/microcode/intel-base.c | 50 +++++++++++++++++
 xen/arch/x86/cpu/microcode/intel.c      | 56 +++----------------
 xen/arch/x86/cpu/microcode/intel.h      | 16 ++++++
 xen/arch/x86/cpu/microcode/private.h    | 14 +++++
 xen/arch/x86/efi/efi-boot.h             |  2 +-
 xen/arch/x86/platform_hypercall.c       |  2 +
 13 files changed, 259 insertions(+), 158 deletions(-)
 create mode 100644 xen/arch/x86/cpu/microcode/amd-base.c
 create mode 100644 xen/arch/x86/cpu/microcode/amd.h
 create mode 100644 xen/arch/x86/cpu/microcode/base.c
 create mode 100644 xen/arch/x86/cpu/microcode/intel-base.c
 create mode 100644 xen/arch/x86/cpu/microcode/intel.h


base-commit: e00c1673992e07ed31e9c60fefa8d053491abbe6
-- 
2.43.0




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.