package/util-linux: bump version to 2.38

- remove 0001-libuuid-include-c-h-to-cover-restrict-keyword.patch
  (from upstream [3])

- remove 0002-libblkid-don-t-mark-cache-as-probed-if-sys-not-available.patch
  (from upstream [4])

- handle new lsfd option
- handle new ipcmk option

For details see [1] and [2].

[1] https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/v2.38-ChangeLog
[2] https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/v2.38-ReleaseNotes
[3] https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?id=5f9b88f43ba7f98f81bde3538d5f4e5cd1a6c01c
[4] 84d38ae3ec

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
Peter Seiderer 2022-04-04 09:12:29 +02:00 committed by Arnout Vandecappelle (Essensium/Mind)
parent a3cbdf8bf0
commit ee978e853a
7 changed files with 20 additions and 177 deletions

View File

@ -1,30 +0,0 @@
From 5f9b88f43ba7f98f81bde3538d5f4e5cd1a6c01c Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Thu, 5 Aug 2021 09:46:21 +0200
Subject: libuuid: include c.h to cover restrict keyword
References: https://github.com/karelzak/util-linux/issues/1405
Signed-off-by: Karel Zak <kzak@redhat.com>
[Retrieved from:
https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?id=5f9b88f43ba7f98f81bde3538d5f4e5cd1a6c01c]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
libuuid/src/unparse.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libuuid/src/unparse.c b/libuuid/src/unparse.c
index f9a5e4315..ffeed2ed6 100644
--- a/libuuid/src/unparse.c
+++ b/libuuid/src/unparse.c
@@ -33,6 +33,7 @@
*/
#include <stdio.h>
+#include "c.h"
#include "uuidP.h"
--
cgit 1.2.3-1.el7

View File

@ -1,141 +0,0 @@
From 84d38ae3eca523ef990cb848563cc63de25266e6 Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Fri, 19 Nov 2021 14:19:03 +0100
Subject: [PATCH] libblkid: don't mark cache as "probed" if /sys not available
For "mount --all" we need to read the cache more than once in a short
time. The library checks the delay between probes, and if the delay is
too short, it does not read devices. This is a problem on boot when there
are no /sys, and the cache is empty. In this case, we need to check
for /sys until it's available constantly.
https://github.com/util-linux/util-linux/issues/1492
Signed-off-by: Karel Zak <kzak@redhat.com>
[Retrieved from:
https://github.com/util-linux/util-linux/commit/84d38ae3eca523ef990cb848563cc63de25266e6]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
libblkid/src/devname.c | 26 +++++++++++++++++---------
libblkid/src/resolve.c | 2 +-
libblkid/src/tag.c | 8 +++++---
3 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/libblkid/src/devname.c b/libblkid/src/devname.c
index 90a8245fc9..9a173e3489 100644
--- a/libblkid/src/devname.c
+++ b/libblkid/src/devname.c
@@ -429,6 +429,8 @@ sysfs_probe_all(blkid_cache cache, int only_if_new, int only_removable)
if (!sysfs)
return -BLKID_ERR_SYSFS;
+ DBG(DEVNAME, ul_debug(" probe /sys/block"));
+
/* scan /sys/block */
while ((dev = xreaddir(sysfs))) {
DIR *dir = NULL;
@@ -533,14 +535,18 @@ sysfs_probe_all(blkid_cache cache, int only_if_new, int only_removable)
/*
* Read the device data for all available block devices in the system.
*/
-static int probe_all(blkid_cache cache, int only_if_new)
+static int probe_all(blkid_cache cache, int only_if_new, int update_interval)
{
+ int rc;
+
if (!cache)
return -BLKID_ERR_PARAM;
if (cache->bic_flags & BLKID_BIC_FL_PROBED &&
- time(NULL) - cache->bic_time < BLKID_PROBE_INTERVAL)
+ time(NULL) - cache->bic_time < BLKID_PROBE_INTERVAL) {
+ DBG(PROBE, ul_debug("don't re-probe [delay < %d]", BLKID_PROBE_INTERVAL));
return 0;
+ }
blkid_read_cache(cache);
#ifdef VG_DIR
@@ -548,7 +554,13 @@ static int probe_all(blkid_cache cache, int only_if_new)
#endif
ubi_probe_all(cache, only_if_new);
- sysfs_probe_all(cache, only_if_new, 0);
+ rc = sysfs_probe_all(cache, only_if_new, 0);
+
+ /* Don't mark the change as "probed" if /sys not avalable */
+ if (update_interval && rc == 0) {
+ cache->bic_time = time(NULL);
+ cache->bic_flags |= BLKID_BIC_FL_PROBED;
+ }
blkid_flush_cache(cache);
return 0;
@@ -567,11 +579,7 @@ int blkid_probe_all(blkid_cache cache)
int ret;
DBG(PROBE, ul_debug("Begin blkid_probe_all()"));
- ret = probe_all(cache, 0);
- if (ret == 0) {
- cache->bic_time = time(NULL);
- cache->bic_flags |= BLKID_BIC_FL_PROBED;
- }
+ ret = probe_all(cache, 0, 1);
DBG(PROBE, ul_debug("End blkid_probe_all() [rc=%d]", ret));
return ret;
}
@@ -589,7 +597,7 @@ int blkid_probe_all_new(blkid_cache cache)
int ret;
DBG(PROBE, ul_debug("Begin blkid_probe_all_new()"));
- ret = probe_all(cache, 1);
+ ret = probe_all(cache, 1, 0);
DBG(PROBE, ul_debug("End blkid_probe_all_new() [rc=%d]", ret));
return ret;
}
diff --git a/libblkid/src/resolve.c b/libblkid/src/resolve.c
index 641b022860..16653fa8e1 100644
--- a/libblkid/src/resolve.c
+++ b/libblkid/src/resolve.c
@@ -32,7 +32,7 @@ char *blkid_get_tag_value(blkid_cache cache, const char *tagname,
blkid_cache c = cache;
char *ret = NULL;
- DBG(TAG, ul_debug("looking for %s on %s", tagname, devname));
+ DBG(TAG, ul_debug("looking for tag %s on %s device", tagname, devname));
if (!devname)
return NULL;
diff --git a/libblkid/src/tag.c b/libblkid/src/tag.c
index 390a648648..178336505f 100644
--- a/libblkid/src/tag.c
+++ b/libblkid/src/tag.c
@@ -326,14 +326,14 @@ blkid_dev blkid_find_dev_with_tag(blkid_cache cache,
blkid_dev dev;
int pri;
struct list_head *p;
- int probe_new = 0;
+ int probe_new = 0, probe_all = 0;
if (!cache || !type || !value)
return NULL;
blkid_read_cache(cache);
- DBG(TAG, ul_debug("looking for %s=%s in cache", type, value));
+ DBG(TAG, ul_debug("looking for tag %s=%s in cache", type, value));
try_again:
pri = -1;
@@ -366,9 +366,11 @@ blkid_dev blkid_find_dev_with_tag(blkid_cache cache,
goto try_again;
}
- if (!dev && !(cache->bic_flags & BLKID_BIC_FL_PROBED)) {
+ if (!dev && !probe_all
+ && !(cache->bic_flags & BLKID_BIC_FL_PROBED)) {
if (blkid_probe_all(cache) < 0)
return NULL;
+ probe_all++;
goto try_again;
}
return dev;

View File

@ -146,6 +146,11 @@ config BR2_PACKAGE_UTIL_LINUX_HWCLOCK
help
Query or set the hardware clock (RTC)
config BR2_PACKAGE_UTIL_LINUX_IPCMK
bool "ipcmk"
help
Make various IPC resources
config BR2_PACKAGE_UTIL_LINUX_IPCRM
bool "ipcrm"
help
@ -198,6 +203,13 @@ config BR2_PACKAGE_UTIL_LINUX_LOSETUP
help
Set up and control loop devices
config BR2_PACKAGE_UTIL_LINUX_LSFD
bool "lsfd"
depends on BR2_USE_MMU # libsmartcols
select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
help
List file descriptors (modern replacement for lsof)
config BR2_PACKAGE_UTIL_LINUX_LSLOGINS
bool "lslogins"
depends on BR2_USE_MMU # libsmartcols

View File

@ -1 +0,0 @@
../0001-libuuid-include-c-h-to-cover-restrict-keyword.patch

View File

@ -1 +0,0 @@
../0002-libblkid-don-t-mark-cache-as-probed-if-sys-not-available.patch

View File

@ -1,5 +1,5 @@
# From https://www.kernel.org/pub/linux/utils/util-linux/v2.37/sha256sums.asc
sha256 634e6916ad913366c3536b6468e7844769549b99a7b2bf80314de78ab5655b83 util-linux-2.37.4.tar.xz
# From https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/sha256sums.asc
sha256 6d111cbe4d55b336db2f1fbeffbc65b89908704c01136371d32aa9bec373eb64 util-linux-2.38.tar.xz
# License files, locally calculated
sha256 869660b5269f4f40a8a679da7f403ea3a6e71d46087aab5e14871b09bcb55955 README.licensing
sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3-Clause

View File

@ -7,8 +7,8 @@
# When making changes to this file, please check if
# util-linux-libs/util-linux-libs.mk needs to be updated accordingly as well.
UTIL_LINUX_VERSION_MAJOR = 2.37
UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).4
UTIL_LINUX_VERSION_MAJOR = 2.38
UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR)
UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz
UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR)
@ -140,6 +140,7 @@ UTIL_LINUX_CONF_OPTS += \
$(if $(BR2_PACKAGE_UTIL_LINUX_FSCK),--enable-fsck,--disable-fsck) \
$(if $(BR2_PACKAGE_UTIL_LINUX_HARDLINK),--enable-hardlink,--disable-hardlink) \
$(if $(BR2_PACKAGE_UTIL_LINUX_HWCLOCK),--enable-hwclock --disable-hwclock-gplv3,--disable-hwclock) \
$(if $(BR2_PACKAGE_UTIL_LINUX_IPCMK),--enable-ipcmk,--disable-ipcmk) \
$(if $(BR2_PACKAGE_UTIL_LINUX_IPCRM),--enable-ipcrm,--disable-ipcrm) \
$(if $(BR2_PACKAGE_UTIL_LINUX_IPCS),--enable-ipcs,--disable-ipcs) \
$(if $(BR2_PACKAGE_UTIL_LINUX_KILL),--enable-kill,--disable-kill) \
@ -153,6 +154,7 @@ UTIL_LINUX_CONF_OPTS += \
$(if $(BR2_PACKAGE_UTIL_LINUX_LOGGER),--enable-logger,--disable-logger) \
$(if $(BR2_PACKAGE_UTIL_LINUX_LOGIN),--enable-login,--disable-login) \
$(if $(BR2_PACKAGE_UTIL_LINUX_LOSETUP),--enable-losetup,--disable-losetup) \
$(if $(BR2_PACKAGE_UTIL_LINUX_LSFD),--enable-lsfd,--disable-lsfd) \
$(if $(BR2_PACKAGE_UTIL_LINUX_LSLOGINS),--enable-lslogins,--disable-lslogins) \
$(if $(BR2_PACKAGE_UTIL_LINUX_LSMEM),--enable-lsmem,--disable-lsmem) \
$(if $(BR2_PACKAGE_UTIL_LINUX_MESG),--enable-mesg,--disable-mesg) \
@ -214,7 +216,9 @@ HOST_UTIL_LINUX_CONF_OPTS += \
--disable-agetty \
--disable-chfn-chsh \
--disable-chmem \
--disable-ipcmk \
--disable-login \
--disable-lsfd \
--disable-lslogins \
--disable-mesg \
--disable-more \