From 76b6666c0ea2f37a22d1705f01a6bfab197b897d Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Tue, 10 Nov 2020 13:22:53 +0100 Subject: [PATCH] lscpu: (arm) reuse parsed vendor ID Signed-off-by: Karel Zak --- sys-utils/lscpu-arm.c | 9 ++++++++- sys-utils/lscpu.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/sys-utils/lscpu-arm.c b/sys-utils/lscpu-arm.c index 313efbd16..5611aacb7 100644 --- a/sys-utils/lscpu-arm.c +++ b/sys-utils/lscpu-arm.c @@ -225,9 +225,16 @@ static int parse_id(const char *str) return id; } -#define parse_implementer_id(_cxt) (parse_id((_cxt)->vendor)) #define parse_model_id(_cxt) (parse_id((_cxt)->model)) +static inline int parse_implementer_id(struct lscpu_cputype *ct) +{ + if (ct->vendor_id) + return ct->vendor_id; + ct->vendor_id = parse_id(ct->vendor); + return ct->vendor_id; +} + /* * Use model and vendor IDs to decode to human readable names. */ diff --git a/sys-utils/lscpu.h b/sys-utils/lscpu.h index 7a8835f87..013d58f3c 100644 --- a/sys-utils/lscpu.h +++ b/sys-utils/lscpu.h @@ -57,6 +57,7 @@ struct lscpu_cputype { int refcount; char *vendor; + int vendor_id; /* created by lscpu_decode_arm() */ char *machinetype; /* s390 */ char *family; char *model;