[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190820144453.ckme6oj2c4hmofhu@salvia>
Date: Tue, 20 Aug 2019 16:44:53 +0200
From: Pablo Neira Ayuso <pablo@...filter.org>
To: Edward Cree <ecree@...arflare.com>
Cc: netfilter-devel@...r.kernel.org, davem@...emloft.net,
netdev@...r.kernel.org, jakub.kicinski@...ronome.com,
jiri@...nulli.us, vladbu@...lanox.com
Subject: Re: [PATCH net-next 1/2] net: flow_offload: mangle 128-bit packet
field with one action
On Tue, Aug 20, 2019 at 03:15:16PM +0100, Edward Cree wrote:
> On 20/08/2019 11:52, Pablo Neira Ayuso wrote:
> > The existing infrastructure needs the front-end to generate up to four
> > actions (one for each 32-bit word) to mangle an IPv6 address. This patch
> > allows you to mangle fields than are longer than 4-bytes with one single
> > action. Drivers have been adapted to this new representation following a
> > simple approach, that is, iterate over the array of words and configure
> > the hardware IR to make the packet mangling. FLOW_ACTION_MANGLE_MAX_WORDS
> > defines the maximum number of words from one given offset (currently 4
> > words).
> >
> > Signed-off-by: Pablo Neira Ayuso <pablo@...filter.org>
>
> What's the point of this?
> Why do you need to be able to do this with a single action? It doesn't
> look like this extra 70 lines of code is actually buying you anything,
> and it makes more work for any other drivers that want to implement the
> offload API.
It looks to me this limitation is coming from tc pedit.
Four actions to mangle an IPv6 address consume more memory when making
the translation, and if you expect a lot of rules.
I think drivers can do more than one 32-bit word mangling in one go.
Powered by blists - more mailing lists