[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <685d299a-fbaf-7393-300e-774bde294174@gmail.com>
Date: Mon, 9 Nov 2020 21:04:13 -0700
From: David Ahern <dsahern@...il.com>
To: Jakub Kicinski <kuba@...nel.org>, David Ahern <dsahern@...nel.org>
Cc: Martin Willi <martin@...ongswan.org>,
Shrijeet Mukherjee <shrijeet@...il.com>,
"David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org,
netfilter-devel@...r.kernel.org
Subject: Re: [PATCH net] vrf: Fix fast path output packet handling with async
Netfilter rules
On 11/9/20 4:44 PM, Jakub Kicinski wrote:
> On Fri, 6 Nov 2020 08:30:30 +0100 Martin Willi wrote:
>> VRF devices use an optimized direct path on output if a default qdisc
>> is involved, calling Netfilter hooks directly. This path, however, does
>> not consider Netfilter rules completing asynchronously, such as with
>> NFQUEUE. The Netfilter okfn() is called for asynchronously accepted
>> packets, but the VRF never passes that packet down the stack to send
>> it out over the slave device. Using the slower redirect path for this
>> seems not feasible, as we do not know beforehand if a Netfilter hook
>> has asynchronously completing rules.
>>
>> Fix the use of asynchronously completing Netfilter rules in OUTPUT and
>> POSTROUTING by using a special completion function that additionally
>> calls dst_output() to pass the packet down the stack. Also, slightly
>> adjust the use of nf_reset_ct() so that is called in the asynchronous
>> case, too.
>>
>> Fixes: dcdd43c41e60 ("net: vrf: performance improvements for IPv4")
>> Fixes: a9ec54d1b0cd ("net: vrf: performance improvements for IPv6")
>> Signed-off-by: Martin Willi <martin@...ongswan.org>
>
> David, can we get an ack?
>
It would be good to get a netfilter maintainer to review; I think it is ok.
Powered by blists - more mailing lists