import nfs-utils-2.5.4-15.el9
This commit is contained in:
parent
67dc46caae
commit
ee805032c4
32
SOURCES/nfs-utils-2.5.4-mount-ebusy.patch
Normal file
32
SOURCES/nfs-utils-2.5.4-mount-ebusy.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
commit c547ad481dca5bc0b0a2e365ebcff3439848f664
|
||||||
|
Author: Rohan Sable <rsable@redhat.com>
|
||||||
|
Date: Mon Feb 14 11:15:22 2022 -0500
|
||||||
|
|
||||||
|
mount.nfs Fix error reporting for already mounted shares
|
||||||
|
|
||||||
|
When mount is triggered for an already mounted
|
||||||
|
share (using auto negotiation), it displays
|
||||||
|
"mount.nfs: Protocol not supported" or
|
||||||
|
"mount.nfs: access denied by server while mounting"
|
||||||
|
instead of EBUSY. This easily causes confusion if
|
||||||
|
the mount was not tried verbose :
|
||||||
|
|
||||||
|
Signed-off-by: Rohan Sable <rsable@redhat.com>
|
||||||
|
Signed-off-by: Yongcheng Yang <yoyang@redhat.com>
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
|
||||||
|
index 3c4e218a..573df6ee 100644
|
||||||
|
--- a/utils/mount/stropts.c
|
||||||
|
+++ b/utils/mount/stropts.c
|
||||||
|
@@ -973,7 +973,9 @@ fall_back:
|
||||||
|
if ((result = nfs_try_mount_v3v2(mi, FALSE)))
|
||||||
|
return result;
|
||||||
|
|
||||||
|
- errno = olderrno;
|
||||||
|
+ if (errno != EBUSY && errno != EACCES)
|
||||||
|
+ errno = olderrno;
|
||||||
|
+
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
37
SOURCES/nfs-utils-2.5.4-nfsman-maxconnect.patch
Normal file
37
SOURCES/nfs-utils-2.5.4-nfsman-maxconnect.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
commit 28deb4f398363e4e75ea41ff0fe604b11f6ee91a
|
||||||
|
Author: Olga Kornievskaia <kolga@netapp.com>
|
||||||
|
Date: Tue Sep 21 13:00:12 2021 -0400
|
||||||
|
|
||||||
|
nfs.man: adding new mount option max_connect
|
||||||
|
|
||||||
|
When client discovers trunkable servers, instead of dropping newly
|
||||||
|
created trunkable connections, add this connection to the existing
|
||||||
|
RPC client.
|
||||||
|
|
||||||
|
Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/utils/mount/nfs.man b/utils/mount/nfs.man
|
||||||
|
index f1b76936..57a693fd 100644
|
||||||
|
--- a/utils/mount/nfs.man
|
||||||
|
+++ b/utils/mount/nfs.man
|
||||||
|
@@ -416,6 +416,19 @@ Note that the
|
||||||
|
option may also be used by some pNFS drivers to decide how many
|
||||||
|
connections to set up to the data servers.
|
||||||
|
.TP 1.5i
|
||||||
|
+.BR max_connect= n
|
||||||
|
+While
|
||||||
|
+.BR nconnect
|
||||||
|
+option sets a limit on the number of connections that can be established
|
||||||
|
+to a given server IP,
|
||||||
|
+.BR max_connect
|
||||||
|
+option allows the user to specify maximum number of connections to different
|
||||||
|
+server IPs that belong to the same NFSv4.1+ server (session trunkable
|
||||||
|
+connections) up to a limit of 16. When client discovers that it established
|
||||||
|
+a client ID to an already existing server, instead of dropping the newly
|
||||||
|
+created network transport, the client will add this new connection to the
|
||||||
|
+list of available transports for that RPC client.
|
||||||
|
+.TP 1.5i
|
||||||
|
.BR rdirplus " / " nordirplus
|
||||||
|
Selects whether to use NFS v3 or v4 READDIRPLUS requests.
|
||||||
|
If this option is not specified, the NFS client uses READDIRPLUS requests
|
36
SOURCES/nfs-utils-2.5.4-rpcctl-xprt.patch
Normal file
36
SOURCES/nfs-utils-2.5.4-rpcctl-xprt.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
diff --git a/tools/rpcctl/rpcctl.py b/tools/rpcctl/rpcctl.py
|
||||||
|
index b8df556b..d2110ad6 100755
|
||||||
|
--- a/tools/rpcctl/rpcctl.py
|
||||||
|
+++ b/tools/rpcctl/rpcctl.py
|
||||||
|
@@ -90,10 +90,18 @@ class Xprt:
|
||||||
|
self.dstaddr = write_addr_file(self.path / "dstaddr", newaddr)
|
||||||
|
|
||||||
|
def set_state(self, state):
|
||||||
|
+ if self.info.get("main_xprt"):
|
||||||
|
+ raise Exception(f"Main xprts cannot be set {state}")
|
||||||
|
with open(self.path / "xprt_state", 'w') as f:
|
||||||
|
f.write(state)
|
||||||
|
self.read_state()
|
||||||
|
|
||||||
|
+ def remove(self):
|
||||||
|
+ if self.info.get("main_xprt"):
|
||||||
|
+ raise Exception("Main xprts cannot be removed")
|
||||||
|
+ self.set_state("offline")
|
||||||
|
+ self.set_state("remove")
|
||||||
|
+
|
||||||
|
def add_command(subparser):
|
||||||
|
parser = subparser.add_parser("xprt", help="Commands for individual xprts")
|
||||||
|
parser.set_defaults(func=Xprt.show, xprt=None)
|
||||||
|
@@ -139,10 +147,9 @@ class Xprt:
|
||||||
|
if args.property == "dstaddr":
|
||||||
|
xprt.set_dstaddr(socket.gethostbyname(args.newaddr[0]))
|
||||||
|
elif args.property == "remove":
|
||||||
|
- xprt.set_state("offline")
|
||||||
|
- xprt.set_state("remove")
|
||||||
|
+ xprt.remove()
|
||||||
|
else:
|
||||||
|
- args.set_state(args.property)
|
||||||
|
+ xprt.set_state(args.property)
|
||||||
|
print(xprt)
|
||||||
|
|
||||||
|
|
40
SOURCES/nfs-utils-2.5.4-rpcidmapd-return.patch
Normal file
40
SOURCES/nfs-utils-2.5.4-rpcidmapd-return.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
commit 9abd3b4b57155dfdfd6895e6086ef550ee56fc49
|
||||||
|
Author: Wenchao Hao <haowenchao@huawei.com>
|
||||||
|
Date: Tue Feb 22 16:06:51 2022 -0500
|
||||||
|
|
||||||
|
idmapd: Fix error status when nfs-idmapd exits
|
||||||
|
|
||||||
|
nfs-idmapd.service would report following error when stopped:
|
||||||
|
|
||||||
|
Starting NFSv4 ID-name mapping service...
|
||||||
|
rpc.idmapd[1198]: Setting log level to 0
|
||||||
|
Started NFSv4 ID-name mapping service.
|
||||||
|
rpc.idmapd[1198]: exiting on signal 15
|
||||||
|
Stopping NFSv4 ID-name mapping service...
|
||||||
|
nfs-idmapd.service: Main process exited, code=exited, status=1/FAILURE
|
||||||
|
nfs-idmapd.service: Failed with result 'exit-code'.
|
||||||
|
Stopped NFSv4 ID-name mapping service.
|
||||||
|
|
||||||
|
commit 93e8f092(idmapd: Add graceful exit and resource cleanup)
|
||||||
|
redirected SIGTERM, so when executing "systemctl stop nfs-idmapd", the
|
||||||
|
main() of idmapd would running to tail to return, while it returned 1
|
||||||
|
which considered as error by systemd.
|
||||||
|
|
||||||
|
So here just return 0 in main().
|
||||||
|
|
||||||
|
Signed-off-by: Wenchao Hao <haowenchao@huawei.com>
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/utils/idmapd/idmapd.c b/utils/idmapd/idmapd.c
|
||||||
|
index e2c160e8..e79c124d 100644
|
||||||
|
--- a/utils/idmapd/idmapd.c
|
||||||
|
+++ b/utils/idmapd/idmapd.c
|
||||||
|
@@ -474,7 +474,7 @@ main(int argc, char **argv)
|
||||||
|
event_free(svrdirev);
|
||||||
|
event_base_free(evbase);
|
||||||
|
|
||||||
|
- return 1;
|
||||||
|
+ return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
31
SOURCES/nfs-utils-2.5.4-rpcpipefs-warn.patch
Normal file
31
SOURCES/nfs-utils-2.5.4-rpcpipefs-warn.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
commit 7f8463fe702174bd613df9d308cc899af25ae02e
|
||||||
|
Author: Steve Dickson <steved@redhat.com>
|
||||||
|
Date: Wed Feb 23 15:19:51 2022 -0500
|
||||||
|
|
||||||
|
systemd: Fix format-overflow warning
|
||||||
|
|
||||||
|
rpc-pipefs-generator.c:35:23: error: '%s' directive output between 0 and 2147483653 bytes may exceed minimum required size of 4095 [-Werror=format-overflow=]
|
||||||
|
35 | sprintf(path, "%s/%s", dirname, pipefs_unit);
|
||||||
|
| ^
|
||||||
|
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/systemd/rpc-pipefs-generator.c b/systemd/rpc-pipefs-generator.c
|
||||||
|
index c24db567..7b2bb4f7 100644
|
||||||
|
--- a/systemd/rpc-pipefs-generator.c
|
||||||
|
+++ b/systemd/rpc-pipefs-generator.c
|
||||||
|
@@ -28,11 +28,12 @@ static int generate_mount_unit(const char *pipefs_path, const char *pipefs_unit,
|
||||||
|
{
|
||||||
|
char *path;
|
||||||
|
FILE *f;
|
||||||
|
+ size_t size = (strlen(dirname) + 1 + strlen(pipefs_unit) + 1);
|
||||||
|
|
||||||
|
- path = malloc(strlen(dirname) + 1 + strlen(pipefs_unit));
|
||||||
|
+ path = malloc(size);
|
||||||
|
if (!path)
|
||||||
|
return 1;
|
||||||
|
- sprintf(path, "%s/%s", dirname, pipefs_unit);
|
||||||
|
+ snprintf(path, size, "%s/%s", dirname, pipefs_unit);
|
||||||
|
f = fopen(path, "w");
|
||||||
|
if (!f)
|
||||||
|
{
|
31
SOURCES/nfs-utils-2.5.4-systemd-rpcstatd.patch
Normal file
31
SOURCES/nfs-utils-2.5.4-systemd-rpcstatd.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
commit 8a835cebb149ba2a54b6518722c79019cf8e3da4
|
||||||
|
Author: Benjamin Coddington <bcodding@redhat.com>
|
||||||
|
Date: Mon Aug 1 13:19:04 2022 -0400
|
||||||
|
|
||||||
|
rpc-statd.service: Stop rpcbind and rpc.stat in an exit race
|
||||||
|
|
||||||
|
When `systemctl stop rpcbind.socket` is run, the dependency means
|
||||||
|
that systemd first sends SIGTERM to rpcbind, then sigterm to rpc.statd.
|
||||||
|
|
||||||
|
On SIGTERM, rpcbind tears down /var/run/rpcbind.sock. However,
|
||||||
|
rpc-statd on SIGTERM attempts to unregister from rpcbind
|
||||||
|
|
||||||
|
systemd needs to wait for rpc.statd to exit before sending
|
||||||
|
SIGTERM to rpcbind
|
||||||
|
|
||||||
|
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2100395
|
||||||
|
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/systemd/rpc-statd.service b/systemd/rpc-statd.service
|
||||||
|
index 095629f2..392750da 100644
|
||||||
|
--- a/systemd/rpc-statd.service
|
||||||
|
+++ b/systemd/rpc-statd.service
|
||||||
|
@@ -5,7 +5,7 @@ Conflicts=umount.target
|
||||||
|
Requires=nss-lookup.target rpcbind.socket
|
||||||
|
Wants=network-online.target
|
||||||
|
Wants=rpc-statd-notify.service
|
||||||
|
-After=network-online.target nss-lookup.target rpcbind.socket
|
||||||
|
+After=network-online.target nss-lookup.target rpcbind.service
|
||||||
|
|
||||||
|
PartOf=nfs-utils.service
|
||||||
|
IgnoreOnIsolate=yes
|
@ -2,7 +2,7 @@ Summary: NFS utilities and supporting clients and daemons for the kernel NFS ser
|
|||||||
Name: nfs-utils
|
Name: nfs-utils
|
||||||
URL: http://linux-nfs.org/
|
URL: http://linux-nfs.org/
|
||||||
Version: 2.5.4
|
Version: 2.5.4
|
||||||
Release: 10%{?dist}
|
Release: 15%{?dist}
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
|
|
||||||
# group all 32bit related archs
|
# group all 32bit related archs
|
||||||
@ -24,6 +24,16 @@ Patch004: nfs-utils-2.5.4-mount-nov2.patch
|
|||||||
Patch005: nfs-utils-2.5.4-gssd-debug-msg.patch
|
Patch005: nfs-utils-2.5.4-gssd-debug-msg.patch
|
||||||
Patch006: nfs-utils-2.5.4-rpcctl.patch
|
Patch006: nfs-utils-2.5.4-rpcctl.patch
|
||||||
|
|
||||||
|
#
|
||||||
|
# RHEL9.1
|
||||||
|
#
|
||||||
|
Patch007: nfs-utils-2.5.4-nfsman-maxconnect.patch
|
||||||
|
Patch008: nfs-utils-2.5.4-rpcpipefs-warn.patch
|
||||||
|
Patch009: nfs-utils-2.5.4-rpcidmapd-return.patch
|
||||||
|
Patch010: nfs-utils-2.5.4-mount-ebusy.patch
|
||||||
|
Patch011: nfs-utils-2.5.4-rpcctl-xprt.patch
|
||||||
|
Patch012: nfs-utils-2.5.4-systemd-rpcstatd.patch
|
||||||
|
|
||||||
Patch100: nfs-utils-1.2.1-statdpath-man.patch
|
Patch100: nfs-utils-1.2.1-statdpath-man.patch
|
||||||
Patch101: nfs-utils-1.2.1-exp-subtree-warn-off.patch
|
Patch101: nfs-utils-1.2.1-exp-subtree-warn-off.patch
|
||||||
Patch102: nfs-utils-1.2.5-idmap-errmsg.patch
|
Patch102: nfs-utils-1.2.5-idmap-errmsg.patch
|
||||||
@ -36,7 +46,7 @@ Provides: exportfs = %{epoch}:%{version}-%{release}
|
|||||||
Provides: nfsstat = %{epoch}:%{version}-%{release}
|
Provides: nfsstat = %{epoch}:%{version}-%{release}
|
||||||
Provides: showmount = %{epoch}:%{version}-%{release}
|
Provides: showmount = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpcdebug = %{epoch}:%{version}-%{release}
|
Provides: rpcdebug = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpcclt = %{epoch}:%{version}-%{release}
|
Provides: rpcctl = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpc.idmapd = %{epoch}:%{version}-%{release}
|
Provides: rpc.idmapd = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpc.mountd = %{epoch}:%{version}-%{release}
|
Provides: rpc.mountd = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpc.nfsd = %{epoch}:%{version}-%{release}
|
Provides: rpc.nfsd = %{epoch}:%{version}-%{release}
|
||||||
@ -101,7 +111,7 @@ Show NFS client Statistics
|
|||||||
%package -n nfsv4-client-utils
|
%package -n nfsv4-client-utils
|
||||||
Summary: NFSv4 utilities for supporting client
|
Summary: NFSv4 utilities for supporting client
|
||||||
Provides: rpc.gssd = %{epoch}:%{version}-%{release}
|
Provides: rpc.gssd = %{epoch}:%{version}-%{release}
|
||||||
Provides: rpcclt = %{epoch}:%{version}-%{release}
|
Provides: rpcctl = %{epoch}:%{version}-%{release}
|
||||||
Provides: mount.nfs = %{epoch}:%{version}-%{release}
|
Provides: mount.nfs = %{epoch}:%{version}-%{release}
|
||||||
Provides: mount.nfs4 = %{epoch}:%{version}-%{release}
|
Provides: mount.nfs4 = %{epoch}:%{version}-%{release}
|
||||||
Provides: umount.nfs = %{epoch}:%{version}-%{release}
|
Provides: umount.nfs = %{epoch}:%{version}-%{release}
|
||||||
@ -279,9 +289,6 @@ fi
|
|||||||
if [ $1 -eq 0 ]; then
|
if [ $1 -eq 0 ]; then
|
||||||
%systemd_preun nfs-client.target
|
%systemd_preun nfs-client.target
|
||||||
%systemd_preun nfs-server.service
|
%systemd_preun nfs-server.service
|
||||||
|
|
||||||
rm -rf /var/lib/nfs/statd
|
|
||||||
rm -rf /var/lib/nfs/v4recovery
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%preun -n nfsv4-client-utils
|
%preun -n nfsv4-client-utils
|
||||||
@ -301,6 +308,11 @@ fi
|
|||||||
|
|
||||||
/bin/systemctl --system daemon-reload >/dev/null 2>&1 || :
|
/bin/systemctl --system daemon-reload >/dev/null 2>&1 || :
|
||||||
|
|
||||||
|
if [ $1 -eq 0 ] ; then
|
||||||
|
rm -rf /var/lib/nfs/statd
|
||||||
|
rm -rf /var/lib/nfs/v4recovery
|
||||||
|
fi
|
||||||
|
|
||||||
%triggerin -- nfs-utils > 1:2.1.1-3
|
%triggerin -- nfs-utils > 1:2.1.1-3
|
||||||
/bin/systemctl try-restart gssproxy || :
|
/bin/systemctl try-restart gssproxy || :
|
||||||
|
|
||||||
@ -454,6 +466,26 @@ fi
|
|||||||
%{_mandir}/*/nfsiostat.8.gz
|
%{_mandir}/*/nfsiostat.8.gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Aug 18 2022 Steve Dickson <steved@redhat.com> 2.5.4-15
|
||||||
|
- Fix uninstall warnings (bz 2048023)
|
||||||
|
- rpc-statd.service: Stop rpcbind and rpc.stat in an exit race (bz 2112941)
|
||||||
|
|
||||||
|
* Mon Aug 1 2022 Steve Dickson <steved@redhat.com> 2.5.4-14
|
||||||
|
- Fix the typo of dependency tag "Provides: rpcclt" (bz 2104406)
|
||||||
|
|
||||||
|
* Thu Jul 28 2022 Steve Dickson <steved@redhat.com> 2.5.4-13
|
||||||
|
- mount.nfs: Fix Typo auto negotiating code. (bz 2054300)
|
||||||
|
|
||||||
|
* Fri Jul 22 2022 Steve Dickson <steved@redhat.com> 2.5.4-12
|
||||||
|
- idmapd: Fix error status when nfs-idmapd exits (bz 2001764)
|
||||||
|
- mount.nfs Fix error reporting for already mounted shares (bz 2054300)
|
||||||
|
- rpcctl - fix failure when setting xprt offline and online (bz 2081934)
|
||||||
|
- rpc-pipefs-generator: allocate enough space (bz 2109420)
|
||||||
|
|
||||||
|
* Sat Jul 16 2022 Steve Dickson <steved@redhat.com> 2.5.4-11
|
||||||
|
- nfs.man: adding new mount option max_connect (bz 2106848)
|
||||||
|
- systemd: Fix format-overflow warning (bz 2106896)
|
||||||
|
|
||||||
* Mon Feb 28 2022 Steve Dickson <steved@redhat.com> 2.5.4-10
|
* Mon Feb 28 2022 Steve Dickson <steved@redhat.com> 2.5.4-10
|
||||||
- Added the rpcctl command (bz 2059245)
|
- Added the rpcctl command (bz 2059245)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user