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

Felix Fietkau
2022-11-08T09:20:42Z

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@nbd.name>
>> > > ---
>> > > 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