[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c2b9c7e0-4ac8-16f6-f4ac-8f5349560585@mojatatu.com>
Date: Thu, 4 Jan 2018 08:43:08 -0500
From: Jamal Hadi Salim <jhs@...atatu.com>
To: Jiri Pirko <jiri@...nulli.us>
Cc: Jakub Kicinski <kubakici@...pl>, David Ahern <dsahern@...il.com>,
netdev@...r.kernel.org, davem@...emloft.net,
xiyou.wangcong@...il.com, mlxsw@...lanox.com, andrew@...n.ch,
vivien.didelot@...oirfairelinux.com, f.fainelli@...il.com,
michael.chan@...adcom.com, ganeshgr@...lsio.com,
saeedm@...lanox.com, matanb@...lanox.com, leonro@...lanox.com,
idosch@...lanox.com, simon.horman@...ronome.com,
pieter.jansenvanvuuren@...ronome.com, john.hurley@...ronome.com,
alexander.h.duyck@...el.com, ogerlitz@...lanox.com,
john.fastabend@...il.com, daniel@...earbox.net
Subject: Re: [patch net-next v4 00/10] net: sched: allow qdiscs to share
filter block instances
On 18-01-04 08:05 AM, Jiri Pirko wrote:
> Thu, Jan 04, 2018 at 01:55:05PM CET, jhs@...atatu.com wrote:
>>
>> $ tc filter add block 1 protocol ip priority 10 flower ...
>> classid 1:2
>>
>> Looks good - things will work fine for packets showing
>> up on egress of enps7 which match the flower rule
>> and classid 1:2 is selected to queue the packet on.
>>
>> Things will not _work fine_ for packets showing up on
>> egress of ensp8. There is no classid 1:2 on egress of
>> enps8. The prio qdisc is a bad example because it
>> has a default queue (i think 10:2) in this case. Other
>> qdiscs(off top of my head DRR) will just drop the packet.
>
> I'm very well aware of this. The plan is to support this and resolve
> the lack of classid withing the qdisc according to the qdisc type.
If i understood you correctly, that is still iffy.
An admin will see packets for the same filter on one device going
to an agreed-to queue but on another going to a default queue.
> However, currently the classfull qdiscs are not supported for
> block sharing - only ingress and clsact qdiscs are supported.
>
Essentially anything that doesnt have queues associated with it..
(and ignore the tcf_result).
>>
>> I think this is resolvable - but it will take more to the
>> patches than the current set you posted Jiri.
>> A simple solution is to say sharing only works for ingress
>> (but that sounds very lame).
>
> That is the current limitation of the patchset as you can see. The
> sharing works only for ingress and clsact qdisc. So works for both
> ingress and egress (clsact).
>
One option is to name all egress queues the same way on all devices
f.e in the two examples i provided call root qdiscs 1:0.
I am not sure how cleanly you get this to work with egress
My current thinking involves some brain somersault...
I will think some more about it...
cheers,
jamal
Powered by blists - more mailing lists