From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiri Pirko Subject: Re: [patch net-next v7 09/13] net: sched: allow ingress and clsact qdiscs to share filter blocks Date: Thu, 11 Jan 2018 17:15:18 +0100 Message-ID: <20180111161518.GQ2053@nanopsycho.orion> References: <20180109140731.1022-1-jiri@resnulli.us> <20180109140731.1022-10-jiri@resnulli.us> <66883304-2004-7154-4700-9839203cecff@mojatatu.com> <20180111142457.GJ2053@nanopsycho.orion> <3da16333-3954-91c4-98c3-22a19d2bd5d9@mojatatu.com> <20180111144151.GM2053@nanopsycho.orion> <6193cf78-2dba-0d63-c745-3b48439a0a85@mojatatu.com> <20180111150708.GN2053@nanopsycho.orion> <6d71cc06-80e1-e624-6f67-80b8744f52c0@mojatatu.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: netdev@vger.kernel.org, davem@davemloft.net, xiyou.wangcong@gmail.com, mlxsw@mellanox.com, andrew@lunn.ch, vivien.didelot@savoirfairelinux.com, f.fainelli@gmail.com, michael.chan@broadcom.com, ganeshgr@chelsio.com, saeedm@mellanox.com, matanb@mellanox.com, leonro@mellanox.com, idosch@mellanox.com, jakub.kicinski@netronome.com, simon.horman@netronome.com, pieter.jansenvanvuuren@netronome.com, john.hurley@netronome.com, alexander.h.duyck@intel.com, ogerlitz@mellanox.com, john.fastabend@gmail.com, daniel@iogearbox.net, dsahern@gmail.com To: Jamal Hadi Salim Return-path: Received: from mail-wm0-f67.google.com ([74.125.82.67]:35510 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754430AbeAKQPV (ORCPT ); Thu, 11 Jan 2018 11:15:21 -0500 Received: by mail-wm0-f67.google.com with SMTP id r78so6565025wme.0 for ; Thu, 11 Jan 2018 08:15:20 -0800 (PST) Content-Disposition: inline In-Reply-To: <6d71cc06-80e1-e624-6f67-80b8744f52c0@mojatatu.com> Sender: netdev-owner@vger.kernel.org List-ID: Thu, Jan 11, 2018 at 04:44:32PM CET, jhs@mojatatu.com wrote: >On 18-01-11 10:07 AM, Jiri Pirko wrote: >> Thu, Jan 11, 2018 at 03:46:09PM CET, jhs@mojatatu.com wrote: >> > On 18-01-11 09:41 AM, Jiri Pirko wrote: >> > > Thu, Jan 11, 2018 at 03:37:08PM CET, jhs@mojatatu.com wrote: > >> > >> > I only looked at the kernel code. Good you can stop it at tc >> > but the API does not stop it (unless you expect the rest of the >> > world to only use tc). >> >> Jamal, apparently, you did not looked at the kernel code either :) >> Look at the changes done in net/sched/sch_ingress.c - there is where the >> parsing of block attr takes place. >> > >reason i raised it is from looking at tc_ctl_tfilter(). >If i specify ifindex != TCM_IFINDEX_MAGIC_BLOCK, >parent = 0XFFFF.... and block = 22 that should work, no? >i.e regardless of whether parent is INGRESS etc. No, the block needs to be created first by qdisc instance. Seems to me that you are mixing apples and oranges a bit. > >And so i was confused why you had attributes in sch_ingress.c > >> >> > Really - there is no reason for this API to be only via ingress qdisc >> > attributes. You can add a check in cls api to reject any parent that is >> > not either of the clsacts + ingress (depending on tc doesnt sound >> > right). >> >> I was thinking to take this direction originally. To have another >> generic attr called TCA_BLOCK or something that would be used when qdisc >> is created. For ingress, what would work. But for clsact, you need to be >> able to specify 2 block during qdisc creation - one for ingress, one for >> egress. That's when I realized this has to be per-qdisc-type attr. >> > >ok for clsact - i can see that we dont have enough fields in the tcm >message. That is not a problem. Again, don't mix filter manipulation with qdisc manipulation. > >TCA_BLOCK sounds appealing - could be a speacial tlv with many block ids >maybe? I really would like to use this for egress as well - and what >i described earlier should work for me. I don't get what you mean by "tlv with many block ids". What is it good for? :O > >cheers, >jamal