summary refs log tree commit diff stats
path: root/include/hw/boards.h
diff options
context:
space:
mode:
authorAlireza Sanaee <alireza.sanaee@huawei.com>2025-01-10 22:51:15 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2025-02-25 16:18:12 +0100
commit47fc56f36d333263a5865caad306336e3e61e348 (patch)
treefb3f70f3c957b8ef4194f5fdf393c1a7cd96b47a /include/hw/boards.h
parent90df2cac3700188acadd12948fdad8e9b1459646 (diff)
downloadfocaccia-qemu-47fc56f36d333263a5865caad306336e3e61e348.tar.gz
focaccia-qemu-47fc56f36d333263a5865caad306336e3e61e348.zip
i386/cpu: add has_caches flag to check smp_cache configuration
Add has_caches flag to SMPCompatProps, which helps in avoiding
extra checks for every single layer of caches in x86 (and ARM in
future).

Signed-off-by: Alireza Sanaee <alireza.sanaee@huawei.com>
Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Link: https://lore.kernel.org/r/20250110145115.1574345-6-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include/hw/boards.h')
-rw-r--r--include/hw/boards.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 9360d1ce39..f22b2e7fc7 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -156,6 +156,8 @@ typedef struct {
  * @modules_supported - whether modules are supported by the machine
  * @cache_supported - whether cache (l1d, l1i, l2 and l3) configuration are
  *                    supported by the machine
+ * @has_caches - whether cache properties are explicitly specified in the
+ *               user provided smp-cache configuration
  */
 typedef struct {
     bool prefer_sockets;
@@ -166,6 +168,7 @@ typedef struct {
     bool drawers_supported;
     bool modules_supported;
     bool cache_supported[CACHE_LEVEL_AND_TYPE__MAX];
+    bool has_caches;
 } SMPCompatProps;
 
 /**