mbox series

[6.1.y,00/18] Backport "make svc_stat per-net instead of global"

Message ID 20240810200009.9882-1-cel@kernel.org (mailing list archive)
Headers show
Series Backport "make svc_stat per-net instead of global" | expand

Message

Chuck Lever Aug. 10, 2024, 7:59 p.m. UTC
From: Chuck Lever <chuck.lever@oracle.com>

Following up on

https://lore.kernel.org/linux-nfs/d4b235df-4ee5-4824-9d48-e3b3c1f1f4d1@oracle.com/

Here is a backport series targeting origin/linux-6.1.y that closes
the information leak described in the above thread.

I started with v6.1.y because that is the most recent LTS kernel
and thus the closest to upstream. I plan to look at 5.15 and 5.10
LTS too if this series is applied to v6.1.y.

Review comments welcome.

Chuck Lever (6):
  NFSD: Refactor nfsd_reply_cache_free_locked()
  NFSD: Rename nfsd_reply_cache_alloc()
  NFSD: Replace nfsd_prune_bucket()
  NFSD: Refactor the duplicate reply cache shrinker
  NFSD: Rewrite synopsis of nfsd_percpu_counters_init()
  NFSD: Fix frame size warning in svc_export_parse()

Jeff Layton (2):
  nfsd: move reply cache initialization into nfsd startup
  nfsd: move init of percpu reply_cache_stats counters back to
    nfsd_init_net

Josef Bacik (10):
  sunrpc: don't change ->sv_stats if it doesn't exist
  nfsd: 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/export.c           |  32 ++++--
 fs/nfsd/export.h           |   4 +-
 fs/nfsd/netns.h            |  25 ++++-
 fs/nfsd/nfs4proc.c         |   6 +-
 fs/nfsd/nfscache.c         | 201 ++++++++++++++++++++++---------------
 fs/nfsd/nfsctl.c           |  24 ++---
 fs/nfsd/nfsd.h             |   1 +
 fs/nfsd/nfsfh.c            |   3 +-
 fs/nfsd/nfssvc.c           |  24 +++--
 fs/nfsd/stats.c            |  52 ++++------
 fs/nfsd/stats.h            |  83 ++++++---------
 fs/nfsd/trace.h            |  22 ++++
 fs/nfsd/vfs.c              |   6 +-
 include/linux/sunrpc/svc.h |   5 +-
 net/sunrpc/stats.c         |   2 +-
 net/sunrpc/svc.c           |  36 ++++---
 18 files changed, 301 insertions(+), 231 deletions(-)

Comments

Sasha Levin Aug. 12, 2024, 11:34 a.m. UTC | #1
On Sat, Aug 10, 2024 at 03:59:51PM -0400, cel@kernel.org wrote:
>From: Chuck Lever <chuck.lever@oracle.com>
>
>Following up on
>
>https://lore.kernel.org/linux-nfs/d4b235df-4ee5-4824-9d48-e3b3c1f1f4d1@oracle.com/
>
>Here is a backport series targeting origin/linux-6.1.y that closes
>the information leak described in the above thread.
>
>I started with v6.1.y because that is the most recent LTS kernel
>and thus the closest to upstream. I plan to look at 5.15 and 5.10
>LTS too if this series is applied to v6.1.y.

6.6 would be the most recent LTS, and we would need to have this series
on top of 6.6 first before we can backport it to older trees :)
Chuck Lever Aug. 12, 2024, 1:52 p.m. UTC | #2
> On Aug 12, 2024, at 7:34 AM, Sasha Levin <sashal@kernel.org> wrote:
> 
> On Sat, Aug 10, 2024 at 03:59:51PM -0400, cel@kernel.org wrote:
>> From: Chuck Lever <chuck.lever@oracle.com>
>> 
>> Following up on
>> 
>> https://lore.kernel.org/linux-nfs/d4b235df-4ee5-4824-9d48-e3b3c1f1f4d1@oracle.com/
>> 
>> Here is a backport series targeting origin/linux-6.1.y that closes
>> the information leak described in the above thread.
>> 
>> I started with v6.1.y because that is the most recent LTS kernel
>> and thus the closest to upstream. I plan to look at 5.15 and 5.10
>> LTS too if this series is applied to v6.1.y.
> 
> 6.6 would be the most recent LTS, and we would need to have this series
> on top of 6.6 first before we can backport it to older trees :)

Fair enough -- I was told this work was already in 6.6.y, which
is why I started with v6.1. I'll take care of it.

--
Chuck Lever
Greg KH Aug. 12, 2024, 2:02 p.m. UTC | #3
On Mon, Aug 12, 2024 at 01:52:18PM +0000, Chuck Lever III wrote:
> 
> 
> > On Aug 12, 2024, at 7:34 AM, Sasha Levin <sashal@kernel.org> wrote:
> > 
> > On Sat, Aug 10, 2024 at 03:59:51PM -0400, cel@kernel.org wrote:
> >> From: Chuck Lever <chuck.lever@oracle.com>
> >> 
> >> Following up on
> >> 
> >> https://lore.kernel.org/linux-nfs/d4b235df-4ee5-4824-9d48-e3b3c1f1f4d1@oracle.com/
> >> 
> >> Here is a backport series targeting origin/linux-6.1.y that closes
> >> the information leak described in the above thread.
> >> 
> >> I started with v6.1.y because that is the most recent LTS kernel
> >> and thus the closest to upstream. I plan to look at 5.15 and 5.10
> >> LTS too if this series is applied to v6.1.y.
> > 
> > 6.6 would be the most recent LTS, and we would need to have this series
> > on top of 6.6 first before we can backport it to older trees :)
> 
> Fair enough -- I was told this work was already in 6.6.y, which
> is why I started with v6.1. I'll take care of it.

Only the first few commits are in 6.6.y already, and those don't make
much sense to take into 6.1.y now as they don't do anything on their
own.

thanks,

greg k-h
Greg KH Aug. 15, 2024, 8:27 a.m. UTC | #4
On Sat, Aug 10, 2024 at 03:59:51PM -0400, cel@kernel.org wrote:
> From: Chuck Lever <chuck.lever@oracle.com>
> 
> Following up on
> 
> https://lore.kernel.org/linux-nfs/d4b235df-4ee5-4824-9d48-e3b3c1f1f4d1@oracle.com/
> 
> Here is a backport series targeting origin/linux-6.1.y that closes
> the information leak described in the above thread.
> 
> I started with v6.1.y because that is the most recent LTS kernel
> and thus the closest to upstream. I plan to look at 5.15 and 5.10
> LTS too if this series is applied to v6.1.y.
> 
> Review comments welcome.

Now queued up, thanks.

greg k-h