BPF List
 help / color / mirror / Atom feed
From: Ratheesh Kannoth <rkannoth@marvell.com>
To: <bpf@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<netdev@vger.kernel.org>
Cc: <andrew+netdev@lunn.ch>, <ast@kernel.org>, <daniel@iogearbox.net>,
	<davem@davemloft.net>, <edumazet@google.com>, <hawk@kernel.org>,
	<horms@kernel.org>, <jhs@mojatatu.com>, <jiri@resnulli.us>,
	<john.fastabend@gmail.com>, <kuba@kernel.org>,
	<pabeni@redhat.com>, <sdf@fomichev.me>, <sgoutham@marvell.com>
Subject: Re: [PATCH v10 net-next 0/2] octeontx2-pf: mqprio bandwidth offload for NIX TX schedulers
Date: Wed, 2 Sep 2026 07:09:17 +0530	[thread overview]
Message-ID: <apd-RdkplZBclQZw@rkannoth-OptiPlex-7090> (raw)
In-Reply-To: <20260831131014.2639581-1-rkannoth@marvell.com>

On 2026-08-31 at 18:40:11, Ratheesh Kannoth (rkannoth@marvell.com) wrote:
> This series adds hardware offload for channel-mode mqprio with
> TC_MQPRIO_SHAPER_BW_RATE on Marvell octeontx2 PF devices. Each
> non-QoS transmit queue is shaped by programming MDQ CIR/PIR on the NIX TX
> scheduler. When bandwidth offload is enabled, the driver allocates one
> SMQ per queue, parents every MDQ under TL4[0], and applies each traffic
> class min/max rate to the queue(s) in that class. The TX scheduler
> hierarchy is reprogrammed through ndo_stop()/ndo_open() on every mqprio
> add, replace, or delete.
>
> Patch 1 is required for patch 2. The octeontx2 driver tracks committed
> mqprio configuration in snapshots keyed by the owning qdisc handle. That
> handle is needed to implement two behaviours that patch 2 relies on:
>
>   * tc qdisc replace installs the new mqprio and runs its offload setup
>     before tearing down the replaced instance. Without the handle, the
>     driver cannot tell a stale disable callback from the replaced qdisc
>     apart from teardown of the active configuration, and may clear
>     hardware shapers or netdev TC state while the new mqprio is being
>     committed.
>
>   * When replace fails after partial programming, the driver rolls back
>     from the previous snapshot. Matching setup and teardown callbacks to
>     the same qdisc instance requires the handle passed through the core
>     mqprio offload path.
>
> Patch 1 extends struct tc_mqprio_qopt_offload with that handle and fills
> it from mqprio_enable_offload() and mqprio_disable_offload(). Patch 2
> consumes it in the octeontx2 PF mqprio offload path.
>
> The driver rejects offload unless the interface is running and the
> device supports CIR+PIR shaping. Per-TC rates are rejected when a
> traffic class spans more than one queue, and concurrent PFC, XDP, or SDP
> rep use is blocked. Ethtool channel count changes are blocked while mqprio
> bandwidth offload is active.
>

Will address sashiko comments in v11.

pw-bot: changes-requested

      parent reply	other threads:[~2026-09-02  1:40 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-31 13:10 [PATCH v10 net-next 0/2] octeontx2-pf: mqprio bandwidth offload for NIX TX schedulers Ratheesh Kannoth
2026-08-31 13:10 ` [PATCH v10 net-next 1/2] net/sched: mqprio: pass qdisc handle to offload drivers Ratheesh Kannoth
2026-09-03 19:15   ` [v10,net-next,1/2] " netdev-bot+sashiko
2026-08-31 13:10 ` [PATCH v10 net-next 2/2] octeontx2-pf: add mqprio bandwidth offload for NIX TX schedulers Ratheesh Kannoth
2026-09-01 13:11   ` sashiko-bot
2026-09-03 19:15   ` [v10,net-next,2/2] " netdev-bot+sashiko
2026-09-02  1:39 ` Ratheesh Kannoth [this message]

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=apd-RdkplZBclQZw@rkannoth-OptiPlex-7090 \
    --to=rkannoth@marvell.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=hawk@kernel.org \
    --cc=horms@kernel.org \
    --cc=jhs@mojatatu.com \
    --cc=jiri@resnulli.us \
    --cc=john.fastabend@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=sdf@fomichev.me \
    --cc=sgoutham@marvell.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox