From: Jakub Kicinski <kuba@kernel.org>
To: Paolo Abeni <pabeni@redhat.com>
Cc: netdev@vger.kernel.org, Jiri Pirko <jiri@resnulli.us>,
Madhu Chittim <madhu.chittim@intel.com>,
Sridhar Samudrala <sridhar.samudrala@intel.com>,
Simon Horman <horms@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
Sunil Kovvuri Goutham <sgoutham@marvell.com>,
Jamal Hadi Salim <jhs@mojatatu.com>,
Donald Hunter <donald.hunter@gmail.com>
Subject: Re: [PATCH v4 net-next 02/12] netlink: spec: add shaper YAML spec
Date: Mon, 26 Aug 2024 18:50:55 -0700 [thread overview]
Message-ID: <20240826185055.38e1857f@kernel.org> (raw)
In-Reply-To: <ad5be943-2aa6-4f60-be90-929f889e6057@redhat.com>
On Fri, 23 Aug 2024 10:35:05 +0200 Paolo Abeni wrote:
> > deleted -> deleted / reset
> >
> >> + The user can query the running configuration via the @get operation.
> >
> > The distinction between "scoped" nodes which can be "set"
> > and "detached" "node"s which can only be created via "group" (AFAIU)
> > needs clearer explanation.
>
> How about re-phrasing the previous paragraph as:
>
> Each @shaper is identified within the given device, by an @handle,
> comprising both a @scope and an @id.
>
> Depending on the @scope value, the shapers are attached to specific
> HW objects (queues, devices) or, for @node scope, represent a
> scheduling group that can be placed in an arbitrary location of
> the scheduling tree.
s/that can be placed in an arbitrary location of/which is an inner node/
So:
Depending on the @scope value, the shapers are attached to specific
HW objects (queues, devices) or, for @node scope, represent a
scheduling group which is an inner node the scheduling tree with
multiple inputs.
> Shapers can be created with two different operations: the @set
> operation, to create and update single "attached" shaper, and
> the @group operation, to create and update a scheduling
> group. Only the @group operation can create @node scope shapers.
> >> + render-max: true
> >> + entries:
> >> + - name: unspec
> >> + doc: The scope is not specified.
> >> + -
> >> + name: netdev
> >> + doc: The main shaper for the given network device.
> >> + -
> >> + name: queue
> >> + doc: The shaper is attached to the given device queue.
> >> + -
> >> + name: node
> >> + doc: |
> >> + The shaper allows grouping of queues or others
> >> + node shapers, is not attached to any user-visible
> >
> > Saying it's not attached is confusing. Makes it sound like it exists
> > outside of the scope of a struct net_device.
>
> What about:
>
> Can be placed in any arbitrary location of
> the scheduling tree, except leaves and root.
Oh, I was thinking along the same lines above.
Whether "except leaves or root" or "inner node" is clearer is up to you.
> >> + -
> >> + name: weight
> >> + type: u32
> >> + doc: |
> >> + Weighted round robin weight for given shaper.
> >
> > Relative weight of the input into a round robin node.
>
> I would avoid mentioning 'input' unless we rolls back to the previous
> naming scheme.
Okay, how about:
Relative weight used by a parent round robin node.
> >> + Differently from @leaves and @shaper allow specifying
> >> + the shaper parent handle, too.
> >
> > Maybe this attr is better called "node", after all.
>
> Fine by me, but would that cause some confusion with the alias scope
> value?
But to be clear, the "root" describes the node we're creating, right?
Alternatively maybe we should remove the level of nesting and let
the attributes live at the command level?
next prev parent reply other threads:[~2024-08-27 1:50 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-20 15:12 [PATCH v4 net-next 00/12] net: introduce TX H/W shaping API Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 01/12] tools: ynl: lift an assumption about spec file name Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 02/12] netlink: spec: add shaper YAML spec Paolo Abeni
2024-08-23 1:48 ` Jakub Kicinski
2024-08-23 8:35 ` Paolo Abeni
2024-08-23 9:04 ` Paolo Abeni
2024-08-27 1:50 ` Jakub Kicinski [this message]
2024-08-27 7:41 ` Paolo Abeni
2024-08-23 1:56 ` Jakub Kicinski
2024-08-20 15:12 ` [PATCH v4 net-next 03/12] net-shapers: implement NL get operation Paolo Abeni
2024-08-23 2:10 ` Jakub Kicinski
2024-08-23 8:52 ` Paolo Abeni
2024-08-27 1:55 ` Jakub Kicinski
2024-08-27 7:36 ` Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 04/12] net-shapers: implement NL set and delete operations Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 05/12] net-shapers: implement NL group operation Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 06/12] net-shapers: implement delete support for NODE scope shaper Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 07/12] netlink: spec: add shaper introspection support Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 08/12] net: shaper: implement " Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 09/12] testing: net-drv: add basic shaper test Paolo Abeni
2024-08-21 16:52 ` kernel test robot
2024-08-22 7:53 ` Paolo Abeni
2024-08-27 14:14 ` Simon Horman
2024-08-20 15:12 ` [PATCH v4 net-next 10/12] virtchnl: support queue rate limit and quanta size configuration Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 11/12] ice: Support VF " Paolo Abeni
2024-08-20 15:12 ` [PATCH v4 net-next 12/12] iavf: Add net_shaper_ops support Paolo Abeni
2024-08-20 23:03 ` kernel test robot
2024-08-22 0:58 ` [PATCH v4 net-next 00/12] net: introduce TX H/W shaping API Jakub Kicinski
2024-08-22 1:10 ` patchwork-bot+netdevbpf
2024-08-23 0:43 ` Jakub Kicinski
2024-08-23 7:51 ` Paolo Abeni
2024-08-27 2:14 ` Jakub Kicinski
2024-08-27 7:54 ` Paolo Abeni
2024-08-27 13:53 ` Jakub Kicinski
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=20240826185055.38e1857f@kernel.org \
--to=kuba@kernel.org \
--cc=donald.hunter@gmail.com \
--cc=horms@kernel.org \
--cc=jhs@mojatatu.com \
--cc=jiri@resnulli.us \
--cc=john.fastabend@gmail.com \
--cc=madhu.chittim@intel.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sgoutham@marvell.com \
--cc=sridhar.samudrala@intel.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;
as well as URLs for NNTP newsgroup(s).