This commit adds IsDefined flag to the object and this helps in avoiding extra checks for every single layer of caches in both x86 and ARM.
Signed-off-by: Alireza Sanaee <alireza.san...@huawei.com> --- hw/core/machine-smp.c | 2 ++ include/hw/boards.h | 1 + 2 files changed, 3 insertions(+) diff --git a/hw/core/machine-smp.c b/hw/core/machine-smp.c index 9a28194676..5a02bbf584 100644 --- a/hw/core/machine-smp.c +++ b/hw/core/machine-smp.c @@ -371,6 +371,8 @@ bool machine_parse_smp_cache(MachineState *ms, return false; } + ms->smp_cache.IsDefined = true; + return true; } diff --git a/include/hw/boards.h b/include/hw/boards.h index db2aa2b706..2883a57084 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -373,6 +373,7 @@ typedef struct CpuTopology { typedef struct SmpCache { SmpCacheProperties props[CACHE_LEVEL_AND_TYPE__MAX]; + bool IsDefined; } SmpCache; /** -- 2.34.1