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
|
||||
URL: http://linux-nfs.org/
|
||||
Version: 2.5.4
|
||||
Release: 10%{?dist}
|
||||
Release: 15%{?dist}
|
||||
Epoch: 1
|
||||
|
||||
# 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
|
||||
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
|
||||
Patch101: nfs-utils-1.2.1-exp-subtree-warn-off.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: showmount = %{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.mountd = %{epoch}:%{version}-%{release}
|
||||
Provides: rpc.nfsd = %{epoch}:%{version}-%{release}
|
||||
@ -101,7 +111,7 @@ Show NFS client Statistics
|
||||
%package -n nfsv4-client-utils
|
||||
Summary: NFSv4 utilities for supporting client
|
||||
Provides: rpc.gssd = %{epoch}:%{version}-%{release}
|
||||
Provides: rpcclt = %{epoch}:%{version}-%{release}
|
||||
Provides: rpcctl = %{epoch}:%{version}-%{release}
|
||||
Provides: mount.nfs = %{epoch}:%{version}-%{release}
|
||||
Provides: mount.nfs4 = %{epoch}:%{version}-%{release}
|
||||
Provides: umount.nfs = %{epoch}:%{version}-%{release}
|
||||
@ -279,9 +289,6 @@ fi
|
||||
if [ $1 -eq 0 ]; then
|
||||
%systemd_preun nfs-client.target
|
||||
%systemd_preun nfs-server.service
|
||||
|
||||
rm -rf /var/lib/nfs/statd
|
||||
rm -rf /var/lib/nfs/v4recovery
|
||||
fi
|
||||
|
||||
%preun -n nfsv4-client-utils
|
||||
@ -301,6 +308,11 @@ fi
|
||||
|
||||
/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
|
||||
/bin/systemctl try-restart gssproxy || :
|
||||
|
||||
@ -454,6 +466,26 @@ fi
|
||||
%{_mandir}/*/nfsiostat.8.gz
|
||||
|
||||
%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
|
||||
- Added the rpcctl command (bz 2059245)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user