[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160926182654.292838e6@halley>
Date: Mon, 26 Sep 2016 18:26:54 +0300
From: Shmulik Ladkani <shmulik.ladkani@...il.com>
To: Hannes Frederic Sowa <hannes@...essinduktion.org>
Cc: Florian Westphal <fw@...len.de>,
Jamal Hadi Salim <jhs@...atatu.com>,
"David S. Miller" <davem@...emloft.net>,
WANG Cong <xiyou.wangcong@...il.com>,
Eric Dumazet <edumazet@...gle.com>, netdev@...r.kernel.org,
Daniel Borkmann <daniel@...earbox.net>
Subject: Re: [PATCH net-next 4/4] net/sched: act_mirred: Implement ingress
actions
Hi,
On Mon, 26 Sep 2016 16:43:16 +0200 Hannes Frederic Sowa <hannes@...essinduktion.org> wrote:
> On 26.09.2016 03:35, Florian Westphal wrote:
> >
> > Yes, but I think we get same issue when we deal with stacked
> > interfaces, and redirect is to e.g. vlan on top of physical device.
>
> We do have the adjacent upper lists in all netdevices, calculating if a
> mirred actions would insert the skb on a stacked device above us should
> be as easy as querying netdev_has_upper_dev and should be possible to
> check that during config time.
This does not seem the right direction:
- We should NOT ban egress redirect to an "upper device", this limits
flexibility available today:
One may validly redirect to an "upper device" according to a very
specific criteria such that the skb will NOT be caught again by the
filter when re-iterated down the stack.
- And even if we did, at "config time" as you say, one can always stack
the target device ontop the filtered device at a LATER time.
And obviously, testing "is upper" while executing action is a bad idea.
- Moreover, as Daniel noted, this is just a band-aid which limitely
addresses only few of the already existing troubles with stacked
virtual netdevices (with or without act_mirred).
Frankly, I think the loop-detection suggestions overload act_mirred
with AI that might imply limitations not well assessed (even on existing
usecases).
If needed, I'd go with the "recursion detection" suggested by Daniel,
which is simple and aids with the issues of "egress" redirect that
already exist today.
Moreover, as the patch series is all about "ingress redirect" support,
the "recursion detection" deserves a series of its own, we shouldn't
bundle these two distinct features.
Regards,
Shmulik
Powered by blists - more mailing lists