All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Cc: edumazet@google.com, netdev@vger.kernel.org, davem@davemloft.net,
	pabeni@redhat.com, horms@kernel.org, andrew+netdev@lunn.ch,
	Willem de Bruijn <willemb@google.com>
Subject: Re: [PATCH net-next v8 1/6] net: rtnetlink: add pacing_offload_horizon attribute to net_device
Date: Tue, 8 Sep 2026 14:48:19 -0700	[thread overview]
Message-ID: <20260908144819.16313dd9@kernel.org> (raw)
In-Reply-To: <CAF=yD-JSieHiaWVD9OWnFNiDaM2Y9r52S5cn=aFYYXT=DT0wmQ@mail.gmail.com>

On Tue, 8 Sep 2026 16:48:03 -0400 Willem de Bruijn wrote:
> > > From the name I suspect you mean a feature / ethtool (-k/-K) ?
> > > That would do, but presumably not as a real low bit within
> > > dev->features ? I guess it is a datapath feature but somehow
> > > those bits feel too precious.  
> >
> > Makes sense.
> >
> > An ethtool -K that does not use dev->features seems like a hack.

It's just a way of avoiding netdev_features_t becoming larger than 64b.
At the uAPI level we have a bitmap so we can express any number of bits.
But in the kernel dev->features is u64 / ull so if we run out of bits
the refactor will be rather painful.

Is it really that much worse to add the support for "high feature bits"
which don't go thru netdev_features_t to ethtool, than sprinkling extra
one off booleans into already bloated RTM_SETLINK? Not sure.

> > Keep the existing ip link attribute and make that settable only to
> > zero or max_pacing_offload_horizon?  
> 
> I've updated to a simple boolean pacing_offload in ip link.
> Let me know if you had something else specific in mind.
> 
> +++ b/Documentation/netlink/specs/rt-link.yaml
> @@ -1089,6 +1089,10 @@ attribute-sets:
> +      -
> +        name: pacing-offload
> +        type: u8

Netlink pads very value to 4B so just make it a u32

> +        doc: Enable EDT pacing offload (0 - disabled, 1 - enabled).

> > > Not sure if we should be clearing user config or rejecting
> > > the feature change if currently in use.  
> >
> > We cannot reject the feature change

Feature change means user requesting the feature to be disabled.

> > if it's a device reset and on re-negotiation the device capability
> > changed. E.g., from a firmware rollout.  
> 
> I added a separate patch that adds a netdevice notifier to FQ.
> To reset offload_horizon on device feature change if needed.
> Or any qdisc feature that depends on device state in principle.

I hate both notifiers everywhere and the idea that we have to be able
to quietly revoke device features "on firmware rollout". It leads to
unmaintainable code which almost never runs so it's buggy half of the
time. Whatever.

  reply	other threads:[~2026-09-08 21:48 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-02 18:17 [PATCH net-next v8 0/6] hardware pacing offload Willem de Bruijn
2026-09-02 18:17 ` [PATCH net-next v8 1/6] net: rtnetlink: add pacing_offload_horizon attribute to net_device Willem de Bruijn
2026-09-04  0:19   ` netdev-bot+sashiko
2026-09-04 23:01   ` Jakub Kicinski
2026-09-06  2:22     ` Willem de Bruijn
2026-09-07 23:12       ` Jakub Kicinski
2026-09-08  0:50         ` Willem de Bruijn
2026-09-08 20:48           ` Willem de Bruijn
2026-09-08 21:48             ` Jakub Kicinski [this message]
2026-09-08 22:39               ` Willem de Bruijn
2026-09-08 23:34                 ` Jakub Kicinski
2026-09-09 15:47                   ` Willem de Bruijn
2026-09-09 18:13                     ` Jakub Kicinski
2026-09-02 18:17 ` [PATCH net-next v8 2/6] net_sched: sch_fq: clear past skb->tstamp if offloading pacing Willem de Bruijn
2026-09-02 18:17 ` [PATCH net-next v8 3/6] idpf: support pacing offload Willem de Bruijn
2026-09-04  0:19   ` netdev-bot+sashiko
2026-09-04 15:22     ` Willem de Bruijn
2026-09-07  9:30   ` Loktionov, Aleksandr
2026-09-10 17:14     ` Willem de Bruijn
2026-09-02 18:17 ` [PATCH net-next v8 4/6] selftests: drv-net: refactor so_txtime errqueue handling Willem de Bruijn
2026-09-04  0:19   ` netdev-bot+sashiko
2026-09-02 18:17 ` [PATCH net-next v8 5/6] selftests: drv-net: in so_txtime tell apart sw from hw pacing Willem de Bruijn
2026-09-04  0:19   ` netdev-bot+sashiko
2026-09-02 18:17 ` [PATCH net-next v8 6/6] selftests: drv-net: extend so_txtime with hw offload Willem de Bruijn
2026-09-04  0:19   ` netdev-bot+sashiko

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=20260908144819.16313dd9@kernel.org \
    --to=kuba@kernel.org \
    --cc=andrew+netdev@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=willemb@google.com \
    --cc=willemdebruijn.kernel@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.