mbox series

[0/6] prepare for dynamic server thread management

Message ID 20241023024222.691745-1-neilb@suse.de (mailing list archive)
Headers show
Series prepare for dynamic server thread management | expand

Message

NeilBrown Oct. 23, 2024, 2:37 a.m. UTC
These patches prepare the way for demand-based adjustment of the number
of server threads.  They primarily remove some places there the
configured thread count is used to configure other things.

With these in place only two more patches are needed to have demand
based thread count.  The details of how to configure this need to be
discussed to ensure we have considered all perspectives, and I would
rather than happen in the context of two patches, not in the context of
8.  So I'm sending these first in the hope that will land with minimal
fuss.  Once they do land I'll send the remainder (which you have already
seen) and will look forward to a fruitful discussion.

Thanks,
NeilBrown

 [PATCH 1/6] SUNRPC: move nrthreads counting to start/stop threads.
 [PATCH 2/6] nfsd: return hard failure for OP_SETCLIENTID when there
 [PATCH 3/6] nfs: dynamically adjust per-client DRC slot limits.
 [PATCH 4/6] nfsd: don't use sv_nrthreads in connection limiting
 [PATCH 5/6] sunrpc: remove all connection limit configuration
 [PATCH 6/6] sunrpc: introduce possibility that requested number of

Comments

Chuck Lever Oct. 23, 2024, 2 p.m. UTC | #1
On Wed, Oct 23, 2024 at 01:37:00PM +1100, NeilBrown wrote:
> These patches prepare the way for demand-based adjustment of the number
> of server threads.  They primarily remove some places there the
> configured thread count is used to configure other things.
> 
> With these in place only two more patches are needed to have demand
> based thread count.  The details of how to configure this need to be
> discussed to ensure we have considered all perspectives, and I would
> rather than happen in the context of two patches, not in the context of
> 8.  So I'm sending these first in the hope that will land with minimal
> fuss.  Once they do land I'll send the remainder (which you have already
> seen) and will look forward to a fruitful discussion.

3/6 seems like the star of this show, at least it's the change that
is most important to me, and could have the most potential for
introducing behavior regressions.

I know this will seem like I'm introducing further arbitrary delay,
but I've found that testing and soak time is still valuable for
reducing risk and disruption.

So, for the moment, can we focus on the details of getting 3/6 into
nfsd-next?


> Thanks,
> NeilBrown
> 
>  [PATCH 1/6] SUNRPC: move nrthreads counting to start/stop threads.
>  [PATCH 2/6] nfsd: return hard failure for OP_SETCLIENTID when there
>  [PATCH 3/6] nfs: dynamically adjust per-client DRC slot limits.
>  [PATCH 4/6] nfsd: don't use sv_nrthreads in connection limiting
>  [PATCH 5/6] sunrpc: remove all connection limit configuration
>  [PATCH 6/6] sunrpc: introduce possibility that requested number of