[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a0ada382-105a-4994-ad0f-1a485cef12c4@lunn.ch>
Date: Thu, 9 May 2024 18:17:08 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Paolo Abeni <pabeni@...hat.com>
Cc: netdev@...r.kernel.org, Jakub Kicinski <kuba@...nel.org>,
Jiri Pirko <jiri@...nulli.us>,
Madhu Chittim <madhu.chittim@...el.com>,
Sridhar Samudrala <sridhar.samudrala@...el.com>,
Simon Horman <horms@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
Sunil Kovvuri Goutham <sgoutham@...vell.com>,
Jamal Hadi Salim <jhs@...atatu.com>
Subject: Re: [RFC PATCH] net: introduce HW Rate Limiting Driver API
> > Now the question is, how do i get between these two states? It is not
> > possible to mix WRR and strict priority. Any kAPI which only modifies
> > one queue at once will go straight into an invalid state, and the
> > driver will need to return -EOPNOTSUPP. So it seems like there needs
> > to be an atomic set N queue configuration at once, so i can cleanly go
> > from strict priority across 8 queues to WRR across 8 queues. Is that
> > foreseen?
>
> You could delete all the WRR shapers and then create/add SP based ones.
But that does not match the hardware. I cannot delete the hardware. It
will either do strict priority or WRR. If i delete the software
representation of the shaper, the hardware shaper will keep on doing
what it was doing. So i don't see this as a good model. I think the
driver will create shapers to represent the hardware, and you are not
allowed to delete them or add more of them, because that is what the
hardware is. All you can do is configure the shapers that exist.
> The 'create' op is just an abstraction to tell the NIC to switch from
> the default configuration to the specified one.
Well, the hardware default is i think WRR for the queues, and line
rate. That will be what the software representation of the shapers
will be set to when the driver probes and creates the shapers
representors.
Andrew
Powered by blists - more mailing lists