From b76b4788be25f1fe37c8a39315d9d27c1cea0458 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 30 Sep 2020 14:57:08 +0200 Subject: [PATCH] lscpu: don't use smbios when read snapshots Signed-off-by: Karel Zak --- sys-utils/lscpu-arm.c | 5 +++-- sys-utils/lscpu.c | 2 +- sys-utils/lscpu.h | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/sys-utils/lscpu-arm.c b/sys-utils/lscpu-arm.c index e6678441f4..20c7291e56 100644 --- a/sys-utils/lscpu-arm.c +++ b/sys-utils/lscpu-arm.c @@ -316,13 +316,14 @@ static int __arm_cpu_smbios(struct lscpu_desc *desc) return 0; } -void arm_cpu_decode(struct lscpu_desc *desc) +void arm_cpu_decode(struct lscpu_desc *desc, struct lscpu_modifier *mod) { int rc = -1; /* use SMBIOS Type 4 data if available, * else fall back to manual decoding using the tables above */ - if (access(_PATH_SYS_DMI_TYPE4, R_OK) == 0) + if (mod->system == SYSTEM_LIVE && + access(_PATH_SYS_DMI_TYPE4, R_OK) == 0) rc = __arm_cpu_smbios(desc); if (rc) diff --git a/sys-utils/lscpu.c b/sys-utils/lscpu.c index 90c475a1f4..b7dc4dfb5f 100644 --- a/sys-utils/lscpu.c +++ b/sys-utils/lscpu.c @@ -2475,7 +2475,7 @@ int main(int argc, char *argv[]) read_nodes(desc); read_hypervisor(desc, mod); - arm_cpu_decode(desc); + arm_cpu_decode(desc, mod); switch(mod->mode) { case OUTPUT_SUMMARY: diff --git a/sys-utils/lscpu.h b/sys-utils/lscpu.h index c0c5bbfe15..3de0abcce1 100644 --- a/sys-utils/lscpu.h +++ b/sys-utils/lscpu.h @@ -209,7 +209,7 @@ struct lscpu_modifier { }; extern int read_hypervisor_dmi(void); -extern void arm_cpu_decode(struct lscpu_desc *desc); +extern void arm_cpu_decode(struct lscpu_desc *desc, struct lscpu_modifier *mod); #define _PATH_SYS_DMI "/sys/firmware/dmi/tables/DMI" #define _PATH_SYS_DMI_TYPE4 "/sys/firmware/dmi/entries/4-0/raw" -- 2.47.2