[PATCH] lscpu: remove the old code

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

 



The file "/sys/firmware/dmi/tables/DMI" always exists.

The dmi_decode_cputype() can provide more information then arm_smbios_decode().
So remove it to tidy the code.

Before this patch, we can get the output from Centos 7.9 who has
"/sys/firmware/dmi/entries/4-0/raw" and "/sys/firmware/dmi/tables/DMI":
  ----------------------------------------------------
  BIOS Vendor ID:                  Ampere(TM)
  Model name:                     Neoverse-N1
    BIOS Model name:               Ampere(TM) Altra(TM) Processor
  ----------------------------------------------------

 After this patch which uses "/sys/firmware/dmi/tables/DMI", in Centos 7.9, we get:
  ----------------------------------------------------
  BIOS Vendor ID:                  Ampere(TM)
  Model name:                     Neoverse-N1
    BIOS Model name:               Ampere(TM) Altra(TM) Processor Q00-00 CPU @ 2.8GHz
    BIOS CPU family:               257
  ----------------------------------------------------

Signed-off-by: Huang Shijie <shijie@xxxxxxxxxxxxxxxxxxxxxx>
---
 sys-utils/lscpu-arm.c | 46 +------------------------------------------
 sys-utils/lscpu.h     |  1 -
 2 files changed, 1 insertion(+), 46 deletions(-)

diff --git a/sys-utils/lscpu-arm.c b/sys-utils/lscpu-arm.c
index 885aadc36..d52765f9d 100644
--- a/sys-utils/lscpu-arm.c
+++ b/sys-utils/lscpu-arm.c
@@ -315,53 +315,9 @@ static int arm_rXpY_decode(struct lscpu_cputype *ct)
 	return 0;
 }
 
-#define PROC_MFR_OFFSET		0x07
-#define PROC_VERSION_OFFSET	0x10
-
-/*
- * Use firmware to get human readable names
- */
-static int arm_smbios_decode(struct lscpu_cputype *ct)
-{
-	uint8_t data[8192];
-	char buf[128], *str;
-	struct lscpu_dmi_header h;
-	int fd;
-	ssize_t rs;
-
-	fd = open(_PATH_SYS_DMI_TYPE4, O_RDONLY);
-	if (fd < 0)
-		return fd;
-
-	rs = read_all(fd, (char *) data, 8192);
-	close(fd);
-
-	if (rs == -1)
-		return -1;
-
-	to_dmi_header(&h, data);
-
-	str = dmi_string(&h, data[PROC_MFR_OFFSET]);
-	if (str) {
-		xstrncpy(buf, str, 127);
-		ct->bios_vendor = xstrdup(buf);
-	}
-
-	str = dmi_string(&h, data[PROC_VERSION_OFFSET]);
-	if (str) {
-		xstrncpy(buf, str, 127);
-		ct->bios_modelname = xstrdup(buf);
-	}
-
-	return 0;
-}
-
 static void arm_decode(struct lscpu_cxt *cxt, struct lscpu_cputype *ct)
 {
-	/* use SMBIOS Type 4 data if available */
-	if (!cxt->noalive && access(_PATH_SYS_DMI_TYPE4, R_OK) == 0)
-		arm_smbios_decode(ct);
-	else if (!cxt->noalive && access(_PATH_SYS_DMI, R_OK) == 0)
+	if (!cxt->noalive && access(_PATH_SYS_DMI, R_OK) == 0)
 		dmi_decode_cputype(ct);
 
 	arm_ids_decode(ct);
diff --git a/sys-utils/lscpu.h b/sys-utils/lscpu.h
index 79477b469..8cb0d630c 100644
--- a/sys-utils/lscpu.h
+++ b/sys-utils/lscpu.h
@@ -32,7 +32,6 @@ UL_DEBUG_DECLARE_MASK(lscpu);
 #define _PATH_SYS_CPU		_PATH_SYS_SYSTEM "/cpu"
 #define _PATH_SYS_NODE		_PATH_SYS_SYSTEM "/node"
 #define _PATH_SYS_DMI		"/sys/firmware/dmi/tables/DMI"
-#define _PATH_SYS_DMI_TYPE4	"/sys/firmware/dmi/entries/4-0/raw"
 #define _PATH_ACPI_PPTT		"/sys/firmware/acpi/tables/PPTT"
 
 struct lscpu_cache {
-- 
2.30.2




[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux