Re: [PATCH 05/14] net: dsa: tag_mtk: assign per-port queues

From: Felix Fietkau
Date: Tue Nov 08 2022 - 04:20:23 EST


On 08.11.22 08:58, Vladimir Oltean wrote:
On Tue, Nov 08, 2022 at 07:01:29AM +0100, Felix Fietkau wrote:
On 07.11.22 22:22, Vladimir Oltean wrote:
> On Mon, Nov 07, 2022 at 07:54:43PM +0100, Felix Fietkau wrote:
> > Keeps traffic sent to the switch within link speed limits
> > > > Signed-off-by: Felix Fietkau <nbd@xxxxxxxx>
> > ---
> > net/dsa/tag_mtk.c | 3 +++
> > 1 file changed, 3 insertions(+)
> > > > diff --git a/net/dsa/tag_mtk.c b/net/dsa/tag_mtk.c
> > index 415d8ece242a..445d6113227f 100644
> > --- a/net/dsa/tag_mtk.c
> > +++ b/net/dsa/tag_mtk.c
> > @@ -25,6 +25,9 @@ static struct sk_buff *mtk_tag_xmit(struct sk_buff *skb,
> > u8 xmit_tpid;
> > u8 *mtk_tag;
> > + /* Reserve the first three queues for packets not passed through DSA */
> > + skb_set_queue_mapping(skb, 3 + dp->index);
> > +
> > Should DSA have to care about this detail, or could you rework your
> mtk_select_queue() procedure to adjust the queue mapping as needed?
I'm setting the queue here so that I don't have to add the extra overhead of
parsing the payload in the ethernet driver.
For passing the queue, I used a similar approach as tag_brcm.c and
drivers/net/ethernet/broadcom/bcmsysport.c

I was just asking if you can't add the 3 elsewhere, since the DSA
tagging protocol shouldn't care how many MAC IDs the DSA master has.
Sure, that would work. I'll change it in v2.

- Felix