]> code.ossystems Code Review - openembedded-core.git/commitdiff
util-linux: backport a patch to address mkswap hangs
authorAlexander Kanavin <alex.kanavin@gmail.com>
Thu, 17 Jun 2021 08:49:24 +0000 (10:49 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 17 Jun 2021 12:42:50 +0000 (13:42 +0100)
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/util-linux/util-linux.inc
meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch [new file with mode: 0644]

index 6a7a6a968fdc7658699651e908ef2f36482020ba..9d7d8a23aaa7329bc77f57904f79d7fb13a5c2d5 100644 (file)
@@ -35,5 +35,6 @@ 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://8a3a74160b96498d672e3652827aa7e6d7f3a120.patch \
            "
 SRC_URI[sha256sum] = "bd07b7e98839e0359842110525a3032fdb8eaf3a90bedde3dd1652d32d15cce5"
diff --git a/meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch b/meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch
new file mode 100644 (file)
index 0000000..a5bb00a
--- /dev/null
@@ -0,0 +1,29 @@
+From 8a3a74160b96498d672e3652827aa7e6d7f3a120 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 15 Jun 2021 12:04:43 +0200
+Subject: [PATCH] mkswap: fix holes detection (infinite loop and/or
+ stack-buffer-underflow)
+
+Reported-by: Brian Lane <bcl@redhat.com>
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1971877
+Fix: https://github.com/karelzak/util-linux/issues/1348
+Signed-off-by: Karel Zak <kzak@redhat.com>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ disk-utils/mkswap.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/disk-utils/mkswap.c b/disk-utils/mkswap.c
+index 27374fd72..c45a3a317 100644
+--- a/disk-utils/mkswap.c
++++ b/disk-utils/mkswap.c
+@@ -267,6 +267,8 @@ static void check_extents(struct mkswap_control *ctl)
+                       return;
+               n = fiemap->fm_mapped_extents;
++              if (n == 0)
++                      break;
+               for (i = 0; i < n; i++) {
+                       struct fiemap_extent *e = &fiemap->fm_extents[i];