import coreutils-8.32-32.el9
This commit is contained in:
parent
badebd29c9
commit
db38777100
87
SOURCES/coreutils-9.0-autofs-no-mount.patch
Normal file
87
SOURCES/coreutils-9.0-autofs-no-mount.patch
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
From f4422844dbcd839ce486bcbc15b7bd5b72c9198d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rohan Sable <rsable@redhat.com>
|
||||||
|
Date: Mon, 7 Mar 2022 14:14:13 +0000
|
||||||
|
Subject: [PATCH 1/2] ls: avoid triggering automounts
|
||||||
|
|
||||||
|
statx() has different defaults wrt automounting
|
||||||
|
compared to stat() or lstat(), so explicitly
|
||||||
|
set the AT_NO_AUTOMOUNT flag to suppress that behavior,
|
||||||
|
and avoid unintended operations or potential errors.
|
||||||
|
|
||||||
|
* src/ls.c (do_statx): Pass AT_NO_AUTOMOUNT to avoid this behavior.
|
||||||
|
Fixes https://bugs.gnu.org/54286
|
||||||
|
|
||||||
|
Signed-off-by: Rohan Sable <rsable@redhat.com>
|
||||||
|
|
||||||
|
Upstream-commit: 85c975df2c25bd799370b04bb294e568e001102f
|
||||||
|
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
|
||||||
|
---
|
||||||
|
src/ls.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/ls.c b/src/ls.c
|
||||||
|
index 1047801..fe0e9f8 100644
|
||||||
|
--- a/src/ls.c
|
||||||
|
+++ b/src/ls.c
|
||||||
|
@@ -1175,7 +1175,7 @@ do_statx (int fd, char const *name, struct stat *st, int flags,
|
||||||
|
{
|
||||||
|
struct statx stx;
|
||||||
|
bool want_btime = mask & STATX_BTIME;
|
||||||
|
- int ret = statx (fd, name, flags, mask, &stx);
|
||||||
|
+ int ret = statx (fd, name, flags | AT_NO_AUTOMOUNT, mask, &stx);
|
||||||
|
if (ret >= 0)
|
||||||
|
{
|
||||||
|
statx_to_stat (&stx, st);
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
||||||
|
|
||||||
|
From 3d227f9e4f3fe806064721e4b9451ee06526bc80 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
|
||||||
|
Date: Mon, 7 Mar 2022 23:29:20 +0000
|
||||||
|
Subject: [PATCH 2/2] stat: only automount with --cached=never
|
||||||
|
|
||||||
|
Revert to the default behavior before the introduction of statx().
|
||||||
|
|
||||||
|
* src/stat.c (do_stat): Set AT_NO_AUTOMOUNT without --cached=never.
|
||||||
|
* doc/coreutils.texi (stat invocation): Mention the automount
|
||||||
|
behavior with --cached=never.
|
||||||
|
|
||||||
|
Fixes https://bugs.gnu.org/54287
|
||||||
|
|
||||||
|
Upstream-commit: 92cb8427c537f37edd43c5cef1909585201372ab
|
||||||
|
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
|
||||||
|
---
|
||||||
|
doc/coreutils.texi | 1 +
|
||||||
|
src/stat.c | 3 +++
|
||||||
|
2 files changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/doc/coreutils.texi b/doc/coreutils.texi
|
||||||
|
index 19b535c..0f5c16a 100644
|
||||||
|
--- a/doc/coreutils.texi
|
||||||
|
+++ b/doc/coreutils.texi
|
||||||
|
@@ -12564,6 +12564,7 @@ Always read the already cached attributes if available.
|
||||||
|
|
||||||
|
@item never
|
||||||
|
Always sychronize with the latest file system attributes.
|
||||||
|
+This also mounts automounted files.
|
||||||
|
|
||||||
|
@item default
|
||||||
|
Leave the caching behavior to the underlying file system.
|
||||||
|
diff --git a/src/stat.c b/src/stat.c
|
||||||
|
index 0c34501..803340a 100644
|
||||||
|
--- a/src/stat.c
|
||||||
|
+++ b/src/stat.c
|
||||||
|
@@ -1381,6 +1381,9 @@ do_stat (char const *filename, char const *format, char const *format2)
|
||||||
|
else if (force_sync)
|
||||||
|
flags |= AT_STATX_FORCE_SYNC;
|
||||||
|
|
||||||
|
+ if (! force_sync)
|
||||||
|
+ flags |= AT_NO_AUTOMOUNT;
|
||||||
|
+
|
||||||
|
fd = statx (fd, pathname, flags, format_to_mask (format), &stx);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
@ -1,8 +1,20 @@
|
|||||||
|
From 6e36198f10a2f63b89c89ebb5d5c185b20fb3a63 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kamil Dudka <kdudka@redhat.com>
|
||||||
|
Date: Mon, 29 Mar 2010 17:20:34 +0000
|
||||||
|
Subject: [PATCH] coreutils-df-direct.patch
|
||||||
|
|
||||||
|
---
|
||||||
|
doc/coreutils.texi | 7 ++++++
|
||||||
|
src/df.c | 34 ++++++++++++++++++++++++++--
|
||||||
|
tests/df/direct.sh | 55 ++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
3 files changed, 94 insertions(+), 2 deletions(-)
|
||||||
|
create mode 100755 tests/df/direct.sh
|
||||||
|
|
||||||
diff --git a/doc/coreutils.texi b/doc/coreutils.texi
|
diff --git a/doc/coreutils.texi b/doc/coreutils.texi
|
||||||
index a507280..400e135 100644
|
index 5b9a597..6810c15 100644
|
||||||
--- a/doc/coreutils.texi
|
--- a/doc/coreutils.texi
|
||||||
+++ b/doc/coreutils.texi
|
+++ b/doc/coreutils.texi
|
||||||
@@ -11303,6 +11303,13 @@ some systems (notably SunOS), doing this yields more up to date results,
|
@@ -11898,6 +11898,13 @@ some systems (notably SunOS), doing this yields more up to date results,
|
||||||
but in general this option makes @command{df} much slower, especially when
|
but in general this option makes @command{df} much slower, especially when
|
||||||
there are many or very busy file systems.
|
there are many or very busy file systems.
|
||||||
|
|
||||||
@ -17,10 +29,10 @@ index a507280..400e135 100644
|
|||||||
@opindex --total
|
@opindex --total
|
||||||
@cindex grand total of disk size, usage and available space
|
@cindex grand total of disk size, usage and available space
|
||||||
diff --git a/src/df.c b/src/df.c
|
diff --git a/src/df.c b/src/df.c
|
||||||
index 8f760db..a7385fd 100644
|
index 48025b9..c8efa5b 100644
|
||||||
--- a/src/df.c
|
--- a/src/df.c
|
||||||
+++ b/src/df.c
|
+++ b/src/df.c
|
||||||
@@ -120,6 +120,9 @@ static bool print_type;
|
@@ -125,6 +125,9 @@ static bool print_type;
|
||||||
/* If true, print a grand total at the end. */
|
/* If true, print a grand total at the end. */
|
||||||
static bool print_grand_total;
|
static bool print_grand_total;
|
||||||
|
|
||||||
@ -30,7 +42,7 @@ index 8f760db..a7385fd 100644
|
|||||||
/* Grand total data. */
|
/* Grand total data. */
|
||||||
static struct fs_usage grand_fsu;
|
static struct fs_usage grand_fsu;
|
||||||
|
|
||||||
@@ -247,13 +250,15 @@ enum
|
@@ -252,13 +255,15 @@ enum
|
||||||
NO_SYNC_OPTION = CHAR_MAX + 1,
|
NO_SYNC_OPTION = CHAR_MAX + 1,
|
||||||
SYNC_OPTION,
|
SYNC_OPTION,
|
||||||
TOTAL_OPTION,
|
TOTAL_OPTION,
|
||||||
@ -47,7 +59,7 @@ index 8f760db..a7385fd 100644
|
|||||||
{"inodes", no_argument, NULL, 'i'},
|
{"inodes", no_argument, NULL, 'i'},
|
||||||
{"human-readable", no_argument, NULL, 'h'},
|
{"human-readable", no_argument, NULL, 'h'},
|
||||||
{"si", no_argument, NULL, 'H'},
|
{"si", no_argument, NULL, 'H'},
|
||||||
@@ -509,7 +514,10 @@ get_header (void)
|
@@ -561,7 +566,10 @@ get_header (void)
|
||||||
for (col = 0; col < ncolumns; col++)
|
for (col = 0; col < ncolumns; col++)
|
||||||
{
|
{
|
||||||
char *cell = NULL;
|
char *cell = NULL;
|
||||||
@ -59,7 +71,7 @@ index 8f760db..a7385fd 100644
|
|||||||
|
|
||||||
if (columns[col]->field == SIZE_FIELD
|
if (columns[col]->field == SIZE_FIELD
|
||||||
&& (header_mode == DEFAULT_MODE
|
&& (header_mode == DEFAULT_MODE
|
||||||
@@ -1397,6 +1405,19 @@ get_point (const char *point, const struct stat *statp)
|
@@ -1464,6 +1472,17 @@ get_point (const char *point, const struct stat *statp)
|
||||||
static void
|
static void
|
||||||
get_entry (char const *name, struct stat const *statp)
|
get_entry (char const *name, struct stat const *statp)
|
||||||
{
|
{
|
||||||
@ -68,9 +80,7 @@ index 8f760db..a7385fd 100644
|
|||||||
+ char *resolved = canonicalize_file_name (name);
|
+ char *resolved = canonicalize_file_name (name);
|
||||||
+ if (resolved)
|
+ if (resolved)
|
||||||
+ {
|
+ {
|
||||||
+ char *mp = find_mount_point (name, statp);
|
+ get_dev (NULL, resolved, name, NULL, NULL, false, false, NULL, false);
|
||||||
+ get_dev (NULL, mp, resolved, NULL, NULL, false, false, NULL, false);
|
|
||||||
+ free(mp);
|
|
||||||
+ free (resolved);
|
+ free (resolved);
|
||||||
+ return;
|
+ return;
|
||||||
+ }
|
+ }
|
||||||
@ -79,7 +89,7 @@ index 8f760db..a7385fd 100644
|
|||||||
if ((S_ISBLK (statp->st_mode) || S_ISCHR (statp->st_mode))
|
if ((S_ISBLK (statp->st_mode) || S_ISCHR (statp->st_mode))
|
||||||
&& get_disk (name))
|
&& get_disk (name))
|
||||||
return;
|
return;
|
||||||
@@ -1467,6 +1488,7 @@ or all file systems by default.\n\
|
@@ -1534,6 +1553,7 @@ or all file systems by default.\n\
|
||||||
-B, --block-size=SIZE scale sizes by SIZE before printing them; e.g.,\n\
|
-B, --block-size=SIZE scale sizes by SIZE before printing them; e.g.,\n\
|
||||||
'-BM' prints sizes in units of 1,048,576 bytes;\n\
|
'-BM' prints sizes in units of 1,048,576 bytes;\n\
|
||||||
see SIZE format below\n\
|
see SIZE format below\n\
|
||||||
@ -87,7 +97,7 @@ index 8f760db..a7385fd 100644
|
|||||||
-h, --human-readable print sizes in powers of 1024 (e.g., 1023M)\n\
|
-h, --human-readable print sizes in powers of 1024 (e.g., 1023M)\n\
|
||||||
-H, --si print sizes in powers of 1000 (e.g., 1.1G)\n\
|
-H, --si print sizes in powers of 1000 (e.g., 1.1G)\n\
|
||||||
"), stdout);
|
"), stdout);
|
||||||
@@ -1557,6 +1579,9 @@ main (int argc, char **argv)
|
@@ -1624,6 +1644,9 @@ main (int argc, char **argv)
|
||||||
xstrtol_fatal (e, oi, c, long_options, optarg);
|
xstrtol_fatal (e, oi, c, long_options, optarg);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -97,7 +107,7 @@ index 8f760db..a7385fd 100644
|
|||||||
case 'i':
|
case 'i':
|
||||||
if (header_mode == OUTPUT_MODE)
|
if (header_mode == OUTPUT_MODE)
|
||||||
{
|
{
|
||||||
@@ -1653,6 +1678,13 @@ main (int argc, char **argv)
|
@@ -1720,6 +1743,13 @@ main (int argc, char **argv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -172,3 +182,6 @@ index 0000000..8e4cfb8
|
|||||||
+compare file_out file_exp || fail=1
|
+compare file_out file_exp || fail=1
|
||||||
+
|
+
|
||||||
+Exit $fail
|
+Exit $fail
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Summary: A set of basic GNU tools commonly used in shell scripts
|
Summary: A set of basic GNU tools commonly used in shell scripts
|
||||||
Name: coreutils
|
Name: coreutils
|
||||||
Version: 8.32
|
Version: 8.32
|
||||||
Release: 31%{?dist}
|
Release: 32%{?dist}
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
Url: https://www.gnu.org/software/coreutils/
|
Url: https://www.gnu.org/software/coreutils/
|
||||||
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
|
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
|
||||||
@ -64,6 +64,9 @@ Patch16: coreutils-8.32-tail-use-poll.patch
|
|||||||
# df: fix duplicated remote entries due to bind mounts (#1979814)
|
# df: fix duplicated remote entries due to bind mounts (#1979814)
|
||||||
Patch17: coreutils-8.32-df-duplicated-entries.patch
|
Patch17: coreutils-8.32-df-duplicated-entries.patch
|
||||||
|
|
||||||
|
# ls, stat: avoid triggering automounts (#2044981)
|
||||||
|
Patch18: coreutils-9.0-autofs-no-mount.patch
|
||||||
|
|
||||||
# disable the test-lock gnulib test prone to deadlock
|
# disable the test-lock gnulib test prone to deadlock
|
||||||
Patch100: coreutils-8.26-test-lock.patch
|
Patch100: coreutils-8.26-test-lock.patch
|
||||||
|
|
||||||
@ -320,6 +323,10 @@ rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
|||||||
%license COPYING
|
%license COPYING
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Mar 01 2022 Kamil Dudka <kdudka@redhat.com> - 8.32-32
|
||||||
|
- ls, stat: avoid triggering automounts (#2044981)
|
||||||
|
- make `df --direct` work again (#2058686)
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com>
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com>
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Related: rhbz#1991688
|
Related: rhbz#1991688
|
||||||
|
Loading…
Reference in New Issue
Block a user