From: Joe Damato <jdamato@fastly.com>
To: Eric Dumazet <edumazet@google.com>
Cc: netdev@vger.kernel.org, amritha.nambiar@intel.com,
sridhar.samudrala@intel.com, sdf@fomichev.me, bjorn@rivosinc.com,
hch@infradead.org, willy@infradead.org,
willemdebruijn.kernel@gmail.com, skhawaja@google.com,
kuba@kernel.org, Martin Karsten <mkarsten@uwaterloo.ca>,
"David S. Miller" <davem@davemloft.net>,
Paolo Abeni <pabeni@redhat.com>, Jiri Pirko <jiri@resnulli.us>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Lorenzo Bianconi <lorenzo@kernel.org>,
Breno Leitao <leitao@debian.org>,
Johannes Berg <johannes.berg@intel.com>,
Alexander Lobakin <aleksander.lobakin@intel.com>,
Heiner Kallweit <hkallweit1@gmail.com>,
open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH net-next 3/5] net: napi: Make gro_flush_timeout per-NAPI
Date: Thu, 29 Aug 2024 16:28:00 +0100 [thread overview]
Message-ID: <ZtCTgEEgcL3XqQcO@LQ3V64L9R2> (raw)
In-Reply-To: <CANn89iKUqF5bO_Ca+qrfO_gsfWmutpzFL-ph5mQd86_2asW9dg@mail.gmail.com>
On Thu, Aug 29, 2024 at 03:48:05PM +0200, Eric Dumazet wrote:
> On Thu, Aug 29, 2024 at 3:13 PM Joe Damato <jdamato@fastly.com> wrote:
> >
> > Allow per-NAPI gro_flush_timeout setting.
> >
> > The existing sysfs parameter is respected; writes to sysfs will write to
> > all NAPI structs for the device and the net_device gro_flush_timeout
> > field. Reads from sysfs will read from the net_device field.
> >
> > The ability to set gro_flush_timeout on specific NAPI instances will be
> > added in a later commit, via netdev-genl.
> >
> > Signed-off-by: Joe Damato <jdamato@fastly.com>
> > Reviewed-by: Martin Karsten <mkarsten@uwaterloo.ca>
> > Tested-by: Martin Karsten <mkarsten@uwaterloo.ca>
> > ---
> > include/linux/netdevice.h | 26 ++++++++++++++++++++++++++
> > net/core/dev.c | 32 ++++++++++++++++++++++++++++----
> > net/core/net-sysfs.c | 2 +-
> > 3 files changed, 55 insertions(+), 5 deletions(-)
> >
> > diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
> > index 7d53380da4c0..d00024d9f857 100644
> > --- a/include/linux/netdevice.h
> > +++ b/include/linux/netdevice.h
> > @@ -372,6 +372,7 @@ struct napi_struct {
> > int rx_count; /* length of rx_list */
> > unsigned int napi_id;
> > int defer_hard_irqs;
> > + unsigned long gro_flush_timeout;
> > struct hrtimer timer;
> > struct task_struct *thread;
> > /* control-path-only fields follow */
> > @@ -557,6 +558,31 @@ void napi_set_defer_hard_irqs(struct napi_struct *n, int defer);
> > */
> > void netdev_set_defer_hard_irqs(struct net_device *netdev, int defer);
> >
>
> Same remark : dev->gro_flush_timeout is no longer read in the fast path.
>
> Please move gro_flush_timeout out of net_device_read_txrx and update
> Documentation/networking/net_cachelines/net_device.rst
Is there some tooling I should use to generate this file?
I am asking because it seems like the file is missing two fields in
net_device at the end of the struct:
struct hlist_head page_pools;
struct dim_irq_moder * irq_moder;
Both of which seem to have been added just before and long after
(respectively) commit 14006f1d8fa2 ("Documentations: Analyze heavily
used Networking related structs").
If this is a bug, I can submit one patch (with two fixes tags) which
adds both fields to the file?
- Joe
next prev parent reply other threads:[~2024-08-29 15:28 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-29 13:11 [PATCH net-next 0/5] Add support for per-NAPI config via netlink Joe Damato
2024-08-29 13:11 ` [PATCH net-next 1/5] net: napi: Make napi_defer_hard_irqs per-NAPI Joe Damato
2024-08-29 13:46 ` Eric Dumazet
2024-08-29 22:05 ` Jakub Kicinski
2024-08-30 9:14 ` Joe Damato
2024-08-30 20:21 ` Jakub Kicinski
2024-08-30 20:23 ` Joe Damato
2024-08-30 8:36 ` Simon Horman
2024-08-30 9:11 ` Joe Damato
2024-08-30 16:50 ` kernel test robot
2024-08-29 13:11 ` [PATCH net-next 2/5] netdev-genl: Dump napi_defer_hard_irqs Joe Damato
2024-08-29 22:08 ` Jakub Kicinski
2024-08-30 9:10 ` Joe Damato
2024-08-30 20:28 ` Jakub Kicinski
2024-08-30 20:31 ` Joe Damato
2024-08-30 21:22 ` Jakub Kicinski
2024-08-29 13:11 ` [PATCH net-next 3/5] net: napi: Make gro_flush_timeout per-NAPI Joe Damato
2024-08-29 13:48 ` Eric Dumazet
2024-08-29 13:57 ` Joe Damato
2024-08-29 15:28 ` Joe Damato [this message]
2024-08-29 15:31 ` Eric Dumazet
2024-08-29 15:39 ` Joe Damato
2024-08-30 16:18 ` kernel test robot
2024-08-30 16:18 ` kernel test robot
2024-08-29 13:12 ` [PATCH net-next 4/5] netdev-genl: Dump gro_flush_timeout Joe Damato
2024-08-29 22:09 ` Jakub Kicinski
2024-08-30 9:17 ` Joe Damato
2024-08-29 13:12 ` [PATCH net-next 5/5] netdev-genl: Support setting per-NAPI config values Joe Damato
2024-08-29 22:31 ` Jakub Kicinski
2024-08-30 10:43 ` Joe Damato
2024-08-30 21:22 ` Jakub Kicinski
2024-08-31 17:27 ` Joe Damato
2024-09-03 0:49 ` Jakub Kicinski
2024-09-02 16:56 ` Joe Damato
2024-09-03 1:02 ` Jakub Kicinski
2024-09-03 19:04 ` Samiullah Khawaja
2024-09-03 19:40 ` Jakub Kicinski
2024-09-03 21:58 ` Samiullah Khawaja
2024-09-05 9:20 ` Joe Damato
2024-09-08 15:54 ` Joe Damato
2024-09-04 23:40 ` Stanislav Fomichev
2024-09-04 23:54 ` Jakub Kicinski
2024-09-05 9:32 ` Joe Damato
2024-09-08 15:57 ` Joe Damato
2024-09-09 23:03 ` Jakub Kicinski
2024-09-05 9:30 ` Joe Damato
2024-09-05 16:56 ` Stanislav Fomichev
2024-09-05 17:05 ` Joe Damato
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZtCTgEEgcL3XqQcO@LQ3V64L9R2 \
--to=jdamato@fastly.com \
--cc=aleksander.lobakin@intel.com \
--cc=amritha.nambiar@intel.com \
--cc=bigeasy@linutronix.de \
--cc=bjorn@rivosinc.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hch@infradead.org \
--cc=hkallweit1@gmail.com \
--cc=jiri@resnulli.us \
--cc=johannes.berg@intel.com \
--cc=kuba@kernel.org \
--cc=leitao@debian.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=mkarsten@uwaterloo.ca \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sdf@fomichev.me \
--cc=skhawaja@google.com \
--cc=sridhar.samudrala@intel.com \
--cc=willemdebruijn.kernel@gmail.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox