Re: [PATCH 00/19 v2] SUNRPC: clean up server thread management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 23, 2021 at 12:29:35PM +1100, NeilBrown wrote:
> This is a revision of my series for cleaning up server thread
> management.

For what it's worth, this version now passes my usual regression tests.

--b.

> Currently lockd, nfsd, and nfs-callback all manage threads slightly
> differently.  This series unifies them.
> 
> Changes since first series include:
>   - minor bug fixes
>   - kernel-doc comments for new functions
>   - split first patch into 3, and make the bugfix a separate patch
>   - fix management of pool_maps so lockd can usse svc_set_num_threads
>     safely
>   - switch nfs-callback to not request a 'pooled' service.
> 
> NeilBrown
> 
> 
> ---
> 
> NeilBrown (19):
>       SUNRPC/NFSD: clean up get/put functions.
>       NFSD: handle error better in write_ports_addfd()
>       SUNRPC: stop using ->sv_nrthreads as a refcount
>       nfsd: make nfsd_stats.th_cnt atomic_t
>       SUNRPC: use sv_lock to protect updates to sv_nrthreads.
>       NFSD: narrow nfsd_mutex protection in nfsd thread
>       NFSD: Make it possible to use svc_set_num_threads_sync
>       SUNRPC: discard svo_setup and rename svc_set_num_threads_sync()
>       NFSD: simplify locking for network notifier.
>       lockd: introduce nlmsvc_serv
>       lockd: simplify management of network status notifiers
>       lockd: move lockd_start_svc() call into lockd_create_svc()
>       lockd: move svc_exit_thread() into the thread
>       lockd: introduce lockd_put()
>       lockd: rename lockd_create_svc() to lockd_get()
>       SUNRPC: move the pool_map definitions (back) into svc.c
>       SUNRPC: always treat sv_nrpools==1 as "not pooled"
>       lockd: use svc_set_num_threads() for thread start and stop
>       NFS: switch the callback service back to non-pooled.
> 
> 
>  fs/lockd/svc.c             | 194 ++++++++++++-------------------------
>  fs/nfs/callback.c          |  12 +--
>  fs/nfsd/netns.h            |  13 +--
>  fs/nfsd/nfsctl.c           |  24 ++---
>  fs/nfsd/nfssvc.c           | 139 +++++++++++++-------------
>  fs/nfsd/stats.c            |   2 +-
>  fs/nfsd/stats.h            |   4 +-
>  include/linux/sunrpc/svc.h |  58 ++++-------
>  net/sunrpc/svc.c           | 166 ++++++++++++++-----------------
>  9 files changed, 248 insertions(+), 364 deletions(-)
> 
> --
> Signature



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux