On 7/26/24 5:32 PM, Jeff Layton wrote:
On Fri, 2024-07-26 at 15:40 -0400, Steve Dickson wrote:
Hey!
On 7/22/24 1:01 PM, Jeff Layton wrote:
Hi Steve,
Here's an squashed version of the nfsdctl patches, that represents
the latest changes. Let me know if you run into any other problems,
and thanks for helping to test this!
Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
---
Changes in v6:
- make the default number of threads 16 in autostart
- doc updates
Changes in v5:
- add support for pool-mode setting
- fix up the handling of nfsd_netlink.h in autoconf
- Link to v4:
https://lore.kernel.org/r/20240604-nfsdctl-v4-0-a2941f782e4c@xxxxxxxxxx
Changes in v4:
- add ability to specify an array of pool thread counts in nfs.conf
- Link to v3:
https://lore.kernel.org/r/20240423-nfsdctl-v3-0-9e68181c846d@xxxxxxxxxx
Changes in v3:
- split nfsdctl.h so we can include the UAPI header as-is
- squash the patches together that added Lorenzo's version and
convert
it to the new interface
- adapt to latest version of netlink interface changes
+ have THREADS_SET/GET report an array of thread counts (one per
pool)
+ pass scope in as a string to THREADS_SET instead of using
unshare() trick
Changes in v2:
- Adapt to latest kernel netlink interface changes (in particular,
send
the leastime and gracetime when they are set in the config).
- More help text for different subcommands
- New nfsdctl(8) manpage
- Patch to make systemd preferentially use nfsdctl instead of
rpc.nfsd
- Link to v1:
https://lore.kernel.org/r/20240412-nfsdctl-v1-0-efd6dcebcc04@xxxxxxxxxx
---
Jeff Layton (3):
nfsdctl: add the nfsdctl utility to nfs-utils
nfsdctl: asciidoc source for the manpage
systemd: use nfsdctl to start and stop the nfs server
configure.ac | 19 +
systemd/nfs-server.service | 4 +-
utils/Makefile.am | 4 +
utils/nfsdctl/Makefile.am | 13 +
utils/nfsdctl/nfsd_netlink.h | 96 +++
utils/nfsdctl/nfsdctl.8 | 304 ++++++++
utils/nfsdctl/nfsdctl.adoc | 158 +++++
utils/nfsdctl/nfsdctl.c | 1570
++++++++++++++++++++++++++++++++++++++++++
utils/nfsdctl/nfsdctl.h | 93 +++
9 files changed, 2259 insertions(+), 2 deletions(-)
---
base-commit: b76dbaa48f7c239accb0c2d1e1d51ddd73f4d6be
change-id: 20240412-nfsdctl-fa8bd8430cfd
The patches apply very cleaning and thank you
for squashing them down... but... bring up the
NFS server with 'nfsdctl autostart' v3 is not
being registered with rpcbind which means
v3 mount will not work.
Just curious are you trying support my
idea of deprecating V3 :-) (That's a joke!)
steved.
You do need a patched kernel for this:
https://lore.kernel.org/linux-nfs/Zp5j2DW+2BNaIPif@xxxxxxxxxxxxxxxxxxxxxx/T/#e675642639c59b1c0070f4b19cd03b89cff7983ba
With a patched kernel, I get this with autostart:
[kdevops@kdevops-nfsd ~]$ rpcinfo -p
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 42104 status
100024 1 tcp 40159 status
100003 3 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100021 1 udp 46387 nlockmgr
100021 3 udp 46387 nlockmgr
100021 4 udp 46387 nlockmgr
100021 1 tcp 36565 nlockmgr
100021 3 tcp 36565 nlockmgr
100021 4 tcp 36565 nlockmgr
Are you seeing different results?
Yup
uname -r
6.11.0-0.rc0.20240724git786c8248dbd3.12.fc41.x86_64 (rawhide)
rpcinfo -p
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100024 1 udp 38596 status
100024 1 tcp 60257 status
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100021 1 udp 55966 nlockmgr
100021 3 udp 55966 nlockmgr
100021 4 udp 55966 nlockmgr
100021 1 tcp 40995 nlockmgr
100021 3 tcp 40995 nlockmgr
100021 4 tcp 40995 nlockmgr
# mount -o v3 fedora:/home/tmp /mnt/tmp
mount.nfs: requested NFS version or transport protocol is not supported
for /mnt/tmp
steved.