nfsd: hold nfsd_mutex across entire netlink operation
authorNeilBrown <neilb@suse.de>
Fri, 15 Dec 2023 00:56:33 +0000 (11:56 +1100)
committerChuck Lever <chuck.lever@oracle.com>
Fri, 15 Dec 2023 15:23:52 +0000 (10:23 -0500)
commit1bd773b4f0c90123af19a853244be61518ae0556
treed5893c7281336e8a863e0f3b529ee4c42eab9405
parent2a501f55cd641eb4d3c16a2eab0d678693fac663
nfsd: hold nfsd_mutex across entire netlink operation

Rather than using svc_get() and svc_put() to hold a stable reference to
the nfsd_svc for netlink lookups, simply hold the mutex for the entire
time.

The "entire" time isn't very long, and the mutex is not often contented.

This makes way for us to remove the refcounts of svc, which is more
confusing than useful.

Reported-by: Jeff Layton <jlayton@kernel.org>
Closes: https://lore.kernel.org/linux-nfs/5d9bbb599569ce29f16e4e0eef6b291eda0f375b.camel@kernel.org/T/#u
Fixes: bd9d6a3efa97 ("NFSD: add rpc_status netlink support")
Signed-off-by: NeilBrown <neilb@suse.de>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfsctl.c