summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2019-10-30 17:17:50 +0100
committerLars Wendler <polynomial-c@gentoo.org>2019-10-30 17:18:41 +0100
commit151c446a8906e7489de10ae2e66642a142e5509c (patch)
tree28610f6bad24d9611c0d0d107b0e89d075270979 /net-fs/nfs-utils
parentsys-kernel/pf-sources: bump to 5.3-pf5 (diff)
downloadgentoo-151c446a8906e7489de10ae2e66642a142e5509c.tar.gz
gentoo-151c446a8906e7489de10ae2e66642a142e5509c.tar.bz2
gentoo-151c446a8906e7489de10ae2e66642a142e5509c.zip
net-fs/nfs-utils: Revbump to fix issue with old kernels and statx
Bumped straight to stable as this seems to affect many users. Thanks-to: Andreas Steinmetz <ast@domdv.de> Tested-by: Lars Langhans <lars.langhans@gmx.de> Tested-by: Brian Evans <grknight@gentoo.org> Bug: https://bugs.gentoo.org/688644 Package-Manager: Portage-2.3.78, Repoman-2.3.17 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'net-fs/nfs-utils')
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.4.1-statx.patch31
-rw-r--r--net-fs/nfs-utils/nfs-utils-2.4.1-r3.ebuild (renamed from net-fs/nfs-utils/nfs-utils-2.4.1-r2.ebuild)1
2 files changed, 32 insertions, 0 deletions
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.4.1-statx.patch b/net-fs/nfs-utils/files/nfs-utils-2.4.1-statx.patch
new file mode 100644
index 00000000000..7515a819915
--- /dev/null
+++ b/net-fs/nfs-utils/files/nfs-utils-2.4.1-statx.patch
@@ -0,0 +1,31 @@
+From c8953944c5d34095d42f604f911022fbe144918c Mon Sep 17 00:00:00 2001
+From: Andreas Steinmetz <ast@domdv.de>
+Date: Wed, 30 Oct 2019 16:57:00 +0100
+Subject: [PATCH] Old kernels don't know statx calls and return EINVAL
+
+On a system with glibc-2.29 and kernel 4.9.128 nfs v3 mount fails as
+statx() with mask=STATX_BASIC_STATS returns EINVAL, probably from
+glibc, as strace of rpc.mountd shows no system call.
+
+Fixes: https://bugs.gentoo.org/688644
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ support/misc/xstat.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/support/misc/xstat.c b/support/misc/xstat.c
+index fa047880..6aca6e29 100644
+--- a/support/misc/xstat.c
++++ b/support/misc/xstat.c
+@@ -47,6 +47,8 @@ statx_do_stat(int fd, const char *pathname, struct stat *statbuf, int flags)
+ statx_copy(statbuf, &stxbuf);
+ return 0;
+ }
++ if (errno == EINVAL)
++ errno = ENOSYS;
+ if (errno == ENOSYS)
+ statx_supported = 0;
+ } else
+--
+2.24.0.rc1
+
diff --git a/net-fs/nfs-utils/nfs-utils-2.4.1-r2.ebuild b/net-fs/nfs-utils/nfs-utils-2.4.1-r3.ebuild
index 26c3bbb3348..24e426f2374 100644
--- a/net-fs/nfs-utils/nfs-utils-2.4.1-r2.ebuild
+++ b/net-fs/nfs-utils/nfs-utils-2.4.1-r3.ebuild
@@ -69,6 +69,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-2.3.4-no-werror.patch
"${FILESDIR}"/${P}-gssd-Look-in-lib32-for-gss-libs-aswell.patch
"${FILESDIR}"/${P}-Fix-include-order-between-config.h-and-stat.h.patch
+ "${FILESDIR}"/${PN}-2.4.1-statx.patch #688644
)
pkg_setup() {