From 401fd81490117cef8436227ad98764e85b874e81 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 9 Oct 2017 11:01:57 +0200 Subject: [PATCH] 2.31-0.4:fix losetup build error --- ...licting-types-for-loopcxt_set_blocks.patch | 44 +++++++++++++++++++ util-linux.spec | 10 +++-- 2 files changed, 51 insertions(+), 3 deletions(-) create mode 100644 0001-losetup-fix-conflicting-types-for-loopcxt_set_blocks.patch diff --git a/0001-losetup-fix-conflicting-types-for-loopcxt_set_blocks.patch b/0001-losetup-fix-conflicting-types-for-loopcxt_set_blocks.patch new file mode 100644 index 0000000..28e1980 --- /dev/null +++ b/0001-losetup-fix-conflicting-types-for-loopcxt_set_blocks.patch @@ -0,0 +1,44 @@ +From c4e60bc0807b04ab104594abc83301481d5d5995 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Wed, 4 Oct 2017 10:08:08 +0200 +Subject: [PATCH] =?UTF-8?q?losetup:=20fix=20conflicting=20types=20for=20?= + =?UTF-8?q?=E2=80=98loopcxt=5Fset=5Fblocksize=E2=80=99?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Reported-by: Lars Wendler +Signed-off-by: Karel Zak +--- + lib/loopdev.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/lib/loopdev.c b/lib/loopdev.c +index 66fa4f669..819aada32 100644 +--- a/lib/loopdev.c ++++ b/lib/loopdev.c +@@ -1430,7 +1430,11 @@ int loopcxt_set_dio(struct loopdev_cxt *lc, unsigned long use_dio) + return 0; + } + +-int loopcxt_set_blocksize(struct loopdev_cxt *lc, unsigned long blocksize) ++/* ++ * Kernel uses "unsigned long" as ioctl arg, but we use u64 for all sizes to ++ * keep loopdev internal API simple. ++ */ ++int loopcxt_set_blocksize(struct loopdev_cxt *lc, uint64_t blocksize) + { + int fd = loopcxt_get_fd(lc); + +@@ -1438,7 +1442,7 @@ int loopcxt_set_blocksize(struct loopdev_cxt *lc, unsigned long blocksize) + return -EINVAL; + + /* Kernels prior to v4.14 don't support this ioctl */ +- if (ioctl(fd, LOOP_SET_BLOCK_SIZE, blocksize) < 0) { ++ if (ioctl(fd, LOOP_SET_BLOCK_SIZE, (unsigned long) blocksize) < 0) { + int rc = -errno; + DBG(CXT, ul_debugobj(lc, "LOOP_SET_BLOCK_SIZE failed: %m")); + return rc; +-- +2.13.6 + diff --git a/util-linux.spec b/util-linux.spec index 58209f6..842539c 100644 --- a/util-linux.spec +++ b/util-linux.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux Version: 2.31 -Release: 0.3%{?dist} +Release: 0.4%{?dist} License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: http://en.wikipedia.org/wiki/Util-linux @@ -92,6 +92,9 @@ Requires: libfdisk = %{version}-%{release} # 151635 - makeing /var/log/lastlog Patch0: 2.28-login-lastlog-create.patch +# upstream patch +Patch1: 0001-losetup-fix-conflicting-types-for-loopcxt_set_blocks.patch + %description The util-linux package contains a large variety of low-level system utilities that are necessary for a Linux system to function. Among @@ -766,7 +769,6 @@ exit 0 %{compldir}/mkfs.minix %{compldir}/mkswap %{compldir}/more -#%{compldir}/mount %{compldir}/mountpoint %{compldir}/namei %{compldir}/nsenter @@ -794,7 +796,6 @@ exit 0 %{compldir}/swapon %{compldir}/taskset %{compldir}/ul -#%{compldir}/umount %{compldir}/unshare %{compldir}/utmpdump %{compldir}/uuidgen @@ -939,6 +940,9 @@ exit 0 %{_libdir}/python*/site-packages/libmount/* %changelog +* Mon Oct 9 2017 Karel Zak - 2.31-0.4 +- fix build error + * Mon Oct 9 2017 Karel Zak - 2.31-0.3 - upgrade to v2.31-rc2 - enable rfkill