This is a resend of the patchset I sent a little over a week ago, with a couple of new patches that allow setting the pool-mode via netlink. This patchset first attempts to detangle the pooled/non-pooled service handling in the sunrpc layer, unifies the codepaths that start the pooled vs. non-pooled nfsd, and then wires up the new netlink threads interface to allow you to start a pooled server by specifying an array of thread counts. Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx> --- Changes in v3: - better announce the subtle change to the /sys/module interface - add more kerneldoc comments - Link to v2: https://lore.kernel.org/r/20240613-nfsd-next-v2-0-20bf690d65fb@xxxxxxxxxx Changes in v2: - add new pool-mode set/get netlink calls --- Jeff Layton (5): sunrpc: fix up the special handling of sv_nrpools == 1 nfsd: make nfsd_svc take an array of thread counts nfsd: allow passing in array of thread counts via netlink sunrpc: refactor pool_mode setting code nfsd: new netlink ops to get/set server pool_mode Documentation/netlink/specs/nfsd.yaml | 27 +++++++++ fs/nfsd/netlink.c | 17 ++++++ fs/nfsd/netlink.h | 2 + fs/nfsd/nfsctl.c | 100 ++++++++++++++++++++++++++---- fs/nfsd/nfsd.h | 3 +- fs/nfsd/nfssvc.c | 59 +++++++++++------- include/linux/sunrpc/svc.h | 3 + include/uapi/linux/nfsd_netlink.h | 10 +++ net/sunrpc/svc.c | 111 ++++++++++++++++++++++------------ 9 files changed, 256 insertions(+), 76 deletions(-) --- base-commit: fec4124bac55ad92c47585fe537e646fe108b8fa change-id: 20240604-nfsd-next-b04c0d2d89a9 Best regards, -- Jeff Layton <jlayton@xxxxxxxxxx>