[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.1206202305070.1971@ja.ssi.bg>
Date: Thu, 21 Jun 2012 00:10:39 +0300 (EEST)
From: Julian Anastasov <ja@....bg>
To: David Miller <davem@...emloft.net>
cc: netdev@...r.kernel.org
Subject: Re: [PATCH v3] ipv4: Early TCP socket demux.
Hello,
On Wed, 20 Jun 2012, David Miller wrote:
> > Date: Wed, 20 Jun 2012 10:00:37 +0300 (EEST)
> >
> >> if (skb->dev != dst->dev)
> >> dst = NULL;
> >
> > That makes the most sense.
>
> Doesn't work, dst->dev is &net->loopback_dev for these locally
> destined input routes.
I see, correct.
> We have to instead check rt->rt_iif or similar.
Yes, rt_iif should be valid for packets with
skb->dst = NULL. It is incorrect only on loopback
traffic diverted to "lo", i.e. when skb->dst != NULL.
But it concerns UDP which is not handled by GRO yet.
When UDP support for GRO is implemented
dev_gro_receive() should additionally check skb_dst
to ignore local copy of b-m/cast traffic sent via
ip_mc_output -> ip_dev_loopback_xmit because
in this case dst->dev and skb->dst can be eth0
where NETIF_F_GRO can be set.
Regards
--
Julian Anastasov <ja@....bg>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists