From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiri Pirko Subject: Re: [patch net-next 00/10] net: sched: introduce multichain support for filters Date: Tue, 2 May 2017 07:50:02 +0200 Message-ID: <20170502055002.GA1877@nanopsycho.orion> References: <1493291540-2119-1-git-send-email-jiri@resnulli.us> <20170428065349.GB1886@nanopsycho.orion> <20170428223446.GB1905@nanopsycho.orion> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Linux Kernel Network Developers , David Miller , Jamal Hadi Salim , David Ahern , Eric Dumazet , Stephen Hemminger , Daniel Borkmann , Alexander Duyck , mlxsw@mellanox.com, Simon Horman To: Cong Wang Return-path: Received: from mail-wr0-f195.google.com ([209.85.128.195]:33310 "EHLO mail-wr0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752042AbdEBFuG (ORCPT ); Tue, 2 May 2017 01:50:06 -0400 Received: by mail-wr0-f195.google.com with SMTP id w50so15540544wrc.0 for ; Mon, 01 May 2017 22:50:05 -0700 (PDT) Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: Tue, May 02, 2017 at 07:26:07AM CEST, xiyou.wangcong@gmail.com wrote: >On Fri, Apr 28, 2017 at 3:34 PM, Jiri Pirko wrote: >> Fri, Apr 28, 2017 at 07:40:24PM CEST, xiyou.wangcong@gmail.com wrote: >>>On Thu, Apr 27, 2017 at 11:53 PM, Jiri Pirko wrote: >>>> Thu, Apr 27, 2017 at 07:46:03PM CEST, xiyou.wangcong@gmail.com wrote: >>>>>On Thu, Apr 27, 2017 at 4:12 AM, Jiri Pirko wrote: >>>>>> Simple example: >>>>>> $ tc qdisc add dev eth0 ingress >>>>>> $ tc filter add dev eth0 parent ffff: protocol ip pref 33 flower dst_mac 52:54:00:3d:c7:6d action goto chain 11 >>>>>> $ tc filter add dev eth0 parent ffff: protocol ip pref 22 chain 11 flower dst_ip 192.168.40.1 action drop >>>>>> $ tc filter show dev eth0 root >>>>> >>>>>Interesting. >>>>> >>>>>I don't look into the code yet. If I understand the concepts correctly, >>>>>so with your patchset we can mark either filter with a chain No. to >>>>>choose which chain it belongs to _logically_ even though >>>>>_physically_ it is still in the old-fashion chain (prio, proto)? >>>> >>>> You have to see the code :) >>> >>>I don't understand why I have to, these are high-level concepts >>>and should be put in your cover letter (aka. design doc). You miss >>>a lot of information about the ordering here. >> >> Well, the description is one thing, but seeing the actual code should >> put the whole view. But if you are missing something, I can add it. What >> do you mean by "information about the ordering"? >> > >By ordering, I mean: > >1) before your patch, filters are ordered by prio and categorized by proto > >2) after your patch, we can jump from one filter to a specified one, how >does this work or not work with the prio/proto? No, you can jump to another chain. And that chain is also ordered by prio/proto. Just imagine currently you have only chain 0. This patchset just extends for other chains.