Subject: [PATCH v9 0/7] convert write_threads, write_version and write_ports to netlink commands

From: Lorenzo Bianconi <[email-masked]>
Date: Tue, 23 Apr 2024 15:25:37 +0200

Introduce write_threads, write_version and write_ports netlink
commands similar to the ones available through the procfs.

Changes since v8:
- introduce scope parameter to write_thread command
- add the capability to specity multiple threads in write_thread for future
  usage
- fix comments
Changes since v7:
- add gracetime and leasetime to threads-{set,get} command
- rely on nla_nest_start instead of nla_nest_start_noflag
Changes since v6:
- add the capability to pass sockaddr from userspace through listener-set
  command
- rebase on top of nfsd-next
Changes since v5:
- for write_ports and write_version commands, userspace is expected to provide
  a NFS listeners/supported versions list it want to enable (all the other
  ports/versions will be disabled).
- fix comments
- rebase on top of nfsd-next
Changes since v4:
- rebase on top of nfsd-next tree
Changes since v3:
- drop write_maxconn and write_maxblksize for the moment
- add write_version and write_ports commands
Changes since v2:
- use u32 to store nthreads in nfsd_nl_threads_set_doit
- rename server-attr in control-plane in nfsd.yaml specs
Changes since v1:
- remove write_v4_end_grace command
- add write_maxblksize and write_maxconn netlink commands

This patch can be tested with user-space tool reported below:
https://patchwork.kernel.org/project/linux-nfs/cover/[email-masked]/

Jeff Layton (3):
  NFSD: move nfsd_mutex handling into nfsd_svc callers
  NFSD: allow callers to pass in scope string to nfsd_svc
  SUNRPC: add a new svc_find_listener helper

Lorenzo Bianconi (4):
  NFSD: convert write_threads to netlink command
  NFSD: add write_version to netlink command
  SUNRPC: introduce svc_xprt_create_from_sa utility routine
  NFSD: add listener-{set,get} netlink command

 Documentation/netlink/specs/nfsd.yaml | 110 ++++++
 fs/nfsd/netlink.c                     |  66 ++++
 fs/nfsd/netlink.h                     |  10 +
 fs/nfsd/netns.h                       |   1 +
 fs/nfsd/nfsctl.c                      | 517 +++++++++++++++++++++++++-
 fs/nfsd/nfsd.h                        |   2 +-
 fs/nfsd/nfssvc.c                      |  11 +-
 include/linux/sunrpc/svc_xprt.h       |   5 +
 include/uapi/linux/nfsd_netlink.h     |  47 +++
 net/sunrpc/svc_xprt.c                 | 167 ++++++---
 10 files changed, 870 insertions(+), 66 deletions(-)

-- 
2.44.0