2024-01-26 16:09:29

by Chuck Lever III

[permalink] [raw]
Subject: Re: [PATCH v3 00/10] Make nfsd stats visible in network ns



> On Jan 26, 2024, at 10:39 AM, Josef Bacik <[email protected]> wrote:
>
> v1: https://lore.kernel.org/linux-nfs/[email protected]/
> v2: https://lore.kernel.org/linux-nfs/[email protected]/
>
> NOTE: there's still one nfs change in here and it's where I dropped pg_stats, I
> assume that's ok for this series, but I can break it out and then follow up with
> a removal later if necessary.

If that's for the NFSv4 callback service, I think that's
OK for me to take through the NFSD tree. An Ack from the
client maintainers would be lovely, but is not required.

If Jeff agrees, I'd like to take v3 for v6.9, and then
Jeff (or I) can follow up with a patch fixing the thread
count stat. Jeff?


> v2->v3:
> - Split out the nfs and nfsd related changes into their own patches.
> - Dropped the change adding sv_stats throuch svc_create()
> - Changed the th_cnt to be global, re-arranged it's location.
>
> v1->v2:
> - rework the sunprc service creation to take a pointer to the sv_stats.
> - dropped ->pg_stats from the svc_program.
> - converted all of the nfsd global stats to per-network namespace.
> - added the ability to point at a specific rpc_stat for rpc program creation.
> - converted the rpc stats for nfs to per-network namespace.
>
> Josef Bacik (10):
> sunrpc: don't change ->sv_stats if it doesn't exist
> nfs: stop setting ->pg_stats for unused stats
> sunrpc: pass in the sv_stats struct through svc_create_pooled
> sunrpc: remove ->pg_stats from svc_program
> sunrpc: use the struct net as the svc proc private
> nfsd: rename NFSD_NET_* to NFSD_STATS_*
> nfsd: expose /proc/net/sunrpc/nfsd in net namespaces
> nfsd: make all of the nfsd stats per-network namespace
> nfsd: remove nfsd_stats, make th_cnt a global counter
> nfsd: make svc_stat per-network namespace instead of global
>
> fs/lockd/svc.c | 3 --
> fs/nfs/callback.c | 3 --
> fs/nfsd/cache.h | 2 --
> fs/nfsd/netns.h | 25 +++++++++++---
> fs/nfsd/nfs4proc.c | 6 ++--
> fs/nfsd/nfs4state.c | 3 +-
> fs/nfsd/nfscache.c | 40 +++++-----------------
> fs/nfsd/nfsctl.c | 16 ++++-----
> fs/nfsd/nfsd.h | 1 +
> fs/nfsd/nfsfh.c | 3 +-
> fs/nfsd/nfssvc.c | 14 +++-----
> fs/nfsd/stats.c | 52 ++++++++++++----------------
> fs/nfsd/stats.h | 70 +++++++++++++-------------------------
> fs/nfsd/vfs.c | 5 +--
> include/linux/sunrpc/svc.h | 5 ++-
> net/sunrpc/stats.c | 2 +-
> net/sunrpc/svc.c | 39 +++++++++++++--------
> 17 files changed, 126 insertions(+), 163 deletions(-)
>
> --
> 2.43.0
>

--
Chuck Lever



2024-01-26 17:35:27

by Jeff Layton

[permalink] [raw]
Subject: Re: [PATCH v3 00/10] Make nfsd stats visible in network ns

On Fri, 2024-01-26 at 16:09 +0000, Chuck Lever III wrote:
>
> > On Jan 26, 2024, at 10:39 AM, Josef Bacik <[email protected]> wrote:
> >
> > v1: https://lore.kernel.org/linux-nfs/[email protected]/
> > v2: https://lore.kernel.org/linux-nfs/[email protected]/
> >
> > NOTE: there's still one nfs change in here and it's where I dropped pg_stats, I
> > assume that's ok for this series, but I can break it out and then follow up with
> > a removal later if necessary.
>
> If that's for the NFSv4 callback service, I think that's
> OK for me to take through the NFSD tree. An Ack from the
> client maintainers would be lovely, but is not required.
>
> If Jeff agrees, I'd like to take v3 for v6.9, and then
> Jeff (or I) can follow up with a patch fixing the thread
> count stat. Jeff?
>
>

Yep. This looks great for v6.9. You can add:

Reviewed-by: Jeff Layton <[email protected]>

> > v2->v3:
> > - Split out the nfs and nfsd related changes into their own patches.
> > - Dropped the change adding sv_stats throuch svc_create()
> > - Changed the th_cnt to be global, re-arranged it's location.
> >
> > v1->v2:
> > - rework the sunprc service creation to take a pointer to the sv_stats.
> > - dropped ->pg_stats from the svc_program.
> > - converted all of the nfsd global stats to per-network namespace.
> > - added the ability to point at a specific rpc_stat for rpc program creation.
> > - converted the rpc stats for nfs to per-network namespace.
> >
> > Josef Bacik (10):
> > sunrpc: don't change ->sv_stats if it doesn't exist
> > nfs: stop setting ->pg_stats for unused stats
> > sunrpc: pass in the sv_stats struct through svc_create_pooled
> > sunrpc: remove ->pg_stats from svc_program
> > sunrpc: use the struct net as the svc proc private
> > nfsd: rename NFSD_NET_* to NFSD_STATS_*
> > nfsd: expose /proc/net/sunrpc/nfsd in net namespaces
> > nfsd: make all of the nfsd stats per-network namespace
> > nfsd: remove nfsd_stats, make th_cnt a global counter
> > nfsd: make svc_stat per-network namespace instead of global
> >
> > fs/lockd/svc.c | 3 --
> > fs/nfs/callback.c | 3 --
> > fs/nfsd/cache.h | 2 --
> > fs/nfsd/netns.h | 25 +++++++++++---
> > fs/nfsd/nfs4proc.c | 6 ++--
> > fs/nfsd/nfs4state.c | 3 +-
> > fs/nfsd/nfscache.c | 40 +++++-----------------
> > fs/nfsd/nfsctl.c | 16 ++++-----
> > fs/nfsd/nfsd.h | 1 +
> > fs/nfsd/nfsfh.c | 3 +-
> > fs/nfsd/nfssvc.c | 14 +++-----
> > fs/nfsd/stats.c | 52 ++++++++++++----------------
> > fs/nfsd/stats.h | 70 +++++++++++++-------------------------
> > fs/nfsd/vfs.c | 5 +--
> > include/linux/sunrpc/svc.h | 5 ++-
> > net/sunrpc/stats.c | 2 +-
> > net/sunrpc/svc.c | 39 +++++++++++++--------
> > 17 files changed, 126 insertions(+), 163 deletions(-)
> >
> > --
> > 2.43.0
> >
>
> --
> Chuck Lever
>
>

--
Jeff Layton <[email protected]>