From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Matyukevich Subject: Re: question: ip forwarding and fq/mq qdisc Date: Fri, 14 Dec 2018 17:12:44 +0300 Message-ID: <20181214141244.7rob5gm245wqbive@bars> References: <20181214120210.kmeuwvajuiwlp2n7@bars> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: netdev@vger.kernel.org, linux-wireless@vger.kernel.org, Jamal Hadi Salim , Cong Wang , Jiri Pirko , sergey.matyukevich.os@quantenna.com To: Eric Dumazet Return-path: Received: from mail-pg1-f195.google.com ([209.85.215.195]:44062 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729783AbeLNOMu (ORCPT ); Fri, 14 Dec 2018 09:12:50 -0500 Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: > > Hi all, > > > > I have been running 4.18-rc8 kernel with enabled IP forwarding between > > wired and wireless interfaces, where both interfaces > > were configured as fq qdisc. > > > > However after moving to 4.20-rc1 kernel the same configuration does not > > work anymore: pass-through packets are not forwarded in both directions. > > Forwarding starts working again only if I change qdisc of _both_ interfaces > > to anything but fq/mq. For instance any combination of pfifo/fq_codel/noqueue > > works fine. > > > > Does it look like a regression or it is a known change in behavior ? > > > > Regards, > > Sergey > > > > Hi Sergey > > I guess EDT model broke this use case. > > I was under the impression skb->tstamp was cleared when forwarding packets, maybe I was wrong. > > Can you try the following ? > > diff --git a/net/ipv4/ip_forward.c b/net/ipv4/ip_forward.c > index 06ee4696703c0ce72ea914403b739839e60f1584..00ec819f949b5e76ea96be901a697f4e12d5cf4d 100644 > --- a/net/ipv4/ip_forward.c > +++ b/net/ipv4/ip_forward.c > @@ -79,6 +79,7 @@ static int ip_forward_finish(struct net *net, struct sock *sk, struct sk_buff *s > if (unlikely(opt->optlen)) > ip_forward_options(skb); > > + skb->tstamp = 0; > return dst_output(net, sk, skb); > } Hi Eric, This patch fixes the issue: ip forwarding works for fq/mq qdisc. Thanks, Sergey