@@ -35,6 +35,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-lin
file://run-ptest \
file://display_testname_for_subtest.patch \
file://avoid_parallel_tests.patch \
+ file://0001-lscpu-Use-larger-buffer-size-for-cpuinfo_parse_cache.patch \
"
SRC_URI[sha256sum] = "890ae8ff810247bd19e274df76e8371d202cda01ad277681b0ea88eeaa00286b"
new file mode 100644
@@ -0,0 +1,36 @@
+From 4697f1555fae2d24518ed00ac22387a258d0ca33 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 15 Sep 2023 00:18:18 -0700
+Subject: [PATCH] lscpu: Use larger buffer size for cpuinfo_parse_cache
+
+BUFSIZ can vary quite a bit e.g. glibc/linux systems its 8192
+but on musl/linux and OSX its 1024, on mingW it is 256, some tests e.g.
+x86_64-64cpu-linux6.2.tar.gz has added really long line for cpu flags
+line which is greater than 1024 characters and hence this test fails
+on musl because lscpu -s reports truncated string
+
+Upstream-Status: Submitted [https://github.com/util-linux/util-linux/pull/2492]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sys-utils/lscpu-cputype.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/sys-utils/lscpu-cputype.c b/sys-utils/lscpu-cputype.c
+index 3fd5f7a3c..863f63152 100644
+--- a/sys-utils/lscpu-cputype.c
++++ b/sys-utils/lscpu-cputype.c
+@@ -462,7 +462,11 @@ static int cpuinfo_parse_cache(struct lscpu_cxt *cxt, int keynum, char *data)
+ int lscpu_read_cpuinfo(struct lscpu_cxt *cxt)
+ {
+ FILE *fp;
++#if BUFSIZ <= 1024
++ char buf[BUFSIZ * 8];
++#else
+ char buf[BUFSIZ];
++#endif
+ size_t i;
+ struct lscpu_cputype *ct;
+ struct cpuinfo_parser _pr = { .cxt = cxt }, *pr = &_pr;
+--
+2.42.0
+
Signed-off-by: Khem Raj <raj.khem@gmail.com> --- meta/recipes-core/util-linux/util-linux.inc | 1 + ...-buffer-size-for-cpuinfo_parse_cache.patch | 36 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 meta/recipes-core/util-linux/util-linux/0001-lscpu-Use-larger-buffer-size-for-cpuinfo_parse_cache.patch