[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1dec3124-de04-1d69-79cb-16d3ea237e5f@katalix.com>
Date: Tue, 23 Apr 2024 13:03:44 +0100
From: James Chapman <jchapman@...alix.com>
To: David Bauer <mail@...id-bauer.net>, Daniel Golle <daniel@...rotopia.org>
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, netdev@...r.kernel.org
Subject: Re: [PATCH net-next] net l2tp: drop flow hash on forward
On 20/04/2024 15:39, David Bauer wrote:
> Hi Daniel,
>
> On 4/20/24 16:02, Daniel Golle wrote:
>> On Sat, Apr 20, 2024 at 03:39:40PM +0200, David Bauer wrote:
>>> Drop the flow-hash of the skb when forwarding to the L2TP netdev.
>>>
>>> This avoids the L2TP qdisc from using the flow-hash from the outer
>>> packet, which is identical for every flow within the tunnel.
>>>
>>> This does not affect every platform but is specific for the ethernet
>>> driver. It depends on the platform including L4 information in the
>>> flow-hash.
>>>
>>> One such example is the Mediatek Filogic MT798x family of networking
>>> processors.
>>>
>>> Signed-off-by: David Bauer <mail@...id-bauer.net>
>>
>> While it's difficult to say which exact commit this fixes, I still
>> consider it being a fix, as otherwise flow-offloading on mentioned
>> platforms will face difficulties when using L2TP (right?).
>
> I'm unsure whether flow-offloading is affected. What is definitely
> affected are
> network schedulers which rely on flow-information (such as fq_codel or
> cake)
>
>> Hence maybe it should go via 'net' tree rather than via 'net-next'?
>
> I was unsure where to send, i can resend it on net if it is more
> appropriate.
This has been missing since L2TP ethernet support was first added.
Thanks for reporting it!
If you need a Fixes tag, I suggest: d9e31d17ceba5 ( "l2tp: Add L2TP
ethernet pseudowire support" )
Acked-by: James Chapman <jchapman@...alix.com>
>
> Best
> David
>
>>
>> The fix itself looks fine to me.
>>
>>> ---
>>> net/l2tp/l2tp_eth.c | 3 +++
>>> 1 file changed, 3 insertions(+)
>>>
>>> diff --git a/net/l2tp/l2tp_eth.c b/net/l2tp/l2tp_eth.c
>>> index 39e487ccc468..8ba00ad433c2 100644
>>> --- a/net/l2tp/l2tp_eth.c
>>> +++ b/net/l2tp/l2tp_eth.c
>>> @@ -127,6 +127,9 @@ static void l2tp_eth_dev_recv(struct
>>> l2tp_session *session, struct sk_buff *skb,
>>> /* checksums verified by L2TP */
>>> skb->ip_summed = CHECKSUM_NONE;
>>> + /* drop outer flow-hash */
>>> + skb_clear_hash(skb);
>>> +
>>> skb_dst_drop(skb);
>>> nf_reset_ct(skb);
>>> --
>>> 2.43.0
>>>
>>>
>
Powered by blists - more mailing lists