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

[PATCH v v3 1/7] x86: relax some CPU checks for non-64 bit CPUs


  • To: xen-devel@xxxxxxxxxxxxxxxxxxxx
  • From: Kevin Lampis <kevin.lampis@xxxxxxxxxx>
  • Date: Fri, 13 Mar 2026 16:36:24 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • 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=uBGZdbGxyCmYWqSQzp9nF0WnQDqrWAjMlDpiE89Jvo8=; b=v2GlEE+Gm77nSt812oCUToHLhXxqd3Rbs+JHr9xBaNHVS5IcOR/ezDRTF/MMedRl7sLbIjVzNAHoxir1hnIxuPl7VEjqt+oyBuhLvF90QVeOJpWsTeWDLp/LZCzwcWDn8FEb/gI08p4P2wCtX9sHumD9gTGA/9JYctfZ5NM+8BCcHZ5mZnOi3JNT9eleinM5gsiGI8Rkgb8Oozrm/Eue+gptuzr56F9RDcDoBKSPM6DwOJmxB8iqLFSulbXPR10vHRV+MQ8l3uHCodP/r0CP3p9zi8IzBEFC6K4GwzK1Nar5wP4Zs7eh1f99mGnqRhq8bfh+lzz4iDeYYazlEhJMbw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qQJlUQS8ehx+pUCBIsVHP8+mSpFc0HTohzg6FKiiI1O0O+WzppWQVrfiF/wSSksRHp7TbqcEAlJ6YPveNf535aqPI6356GflNiAv1ymMI8x8Pb6fsFhQ9hEV5ln9r0MN+2khA55wu7O9w6rjpkr/IfvKGMwY5Vnf7GpBfMw6Rd3hr/XBPSwh2a/ltn+27mdvKlKgWE4zhfFp8XdfT20aXH0EqAH/6QriI+J7UTBaegJ5GNDUj/JsjBxatsnZQ//RHQJc/hHNBVBv+jizM6sJYBPAASRnuDOOsrrOjYiRigWu0+opj6I6uUuEgCjQ7nYVt138VYnV8SfxAq4Ag963FA==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: jbeulich@xxxxxxxx, andrew.cooper3@xxxxxxxxxx, roger.pau@xxxxxxxxxx, Kevin Lampis <kevin.lampis@xxxxxxxxxx>
  • Delivery-date: Fri, 13 Mar 2026 16:36:45 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

These checks were guarding against non-64 bit CPU models but they are
not supported by Xen anymore so the checks are no longer needed.

The switch statement was removed from mcheck_init()
to support Intel family 18/19.

Signed-off-by: Kevin Lampis <kevin.lampis@xxxxxxxxxx>
---
Changes in v2:
- New patch based on review comments

Changes in v3:
- Moved patch to front of the series
---
 xen/arch/x86/acpi/cpu_idle.c    | 5 ++---
 xen/arch/x86/cpu/mcheck/mce.c   | 8 +-------
 xen/arch/x86/cpu/mtrr/generic.c | 3 +--
 3 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
index 0b3d0631dd..46749ca337 100644
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -1059,9 +1059,8 @@ static void acpi_processor_power_init_bm_check(struct 
acpi_processor_flags *flag
      * is not required while entering C3 type state on
      * P4, Core and beyond CPUs
      */
-    if ( c->x86_vendor == X86_VENDOR_INTEL &&
-        (c->x86 > 0x6 || (c->x86 == 6 && c->x86_model >= 14)) )
-            flags->bm_control = 0;
+    if ( c->x86_vendor == X86_VENDOR_INTEL )
+        flags->bm_control = 0;
 }
 
 #define VENDOR_INTEL                   (1)
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 9a91807cfb..c4b3b687a2 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -777,13 +777,7 @@ void mcheck_init(struct cpuinfo_x86 *c, bool bsp)
 
 #ifdef CONFIG_INTEL
     case X86_VENDOR_INTEL:
-        switch ( c->x86 )
-        {
-        case 6:
-        case 15:
-            inited = intel_mcheck_init(c, bsp);
-            break;
-        }
+        inited = intel_mcheck_init(c, bsp);
         break;
 #endif
 
diff --git a/xen/arch/x86/cpu/mtrr/generic.c b/xen/arch/x86/cpu/mtrr/generic.c
index c587e9140e..0ca6a2083f 100644
--- a/xen/arch/x86/cpu/mtrr/generic.c
+++ b/xen/arch/x86/cpu/mtrr/generic.c
@@ -218,8 +218,7 @@ static void __init print_mtrr_state(const char *level)
                        printk("%s  %u disabled\n", level, i);
        }
 
-       if ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD &&
-            boot_cpu_data.x86 >= 0xf) ||
+       if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD ||
             boot_cpu_data.x86_vendor == X86_VENDOR_HYGON) {
                uint64_t syscfg, tom2;
 
-- 
2.51.1




 


Rackspace

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