From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752875AbdBCIID (ORCPT ); Fri, 3 Feb 2017 03:08:03 -0500 Received: from sender153-mail.zoho.com ([74.201.84.153]:25335 "EHLO sender153-mail.zoho.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752449AbdBCIIC (ORCPT ); Fri, 3 Feb 2017 03:08:02 -0500 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=zapps768; d=zoho.com; h=date:from:to:cc:message-id:in-reply-to:references:subject:mime-version:content-type:user-agent; b=s1Vfp8A8Zi/0Qyttp/Mm/Gl8+vTtbSBbYBxJ7Zf2myu3pwwLxZxrsOX5/4/bA+tC9VhCT3YF0J65 mTmtsyWaRulQJAGoL24ALBQQJOfF5kKjSbYNZPu5KERNYz01qhFV Date: Fri, 03 Feb 2017 09:07:55 +0100 From: Fredrik Markstrom To: "Eric Dumazet" Cc: "netdev" , "Evan Jones" , "David S. Miller" , "Cong Wang" , "Greg Kroah-Hartman" , "Vijay Pandurangan" , "linux-kernel" , "ebiederm" Message-ID: <15a0303f544.b70bc5d115840.1387609337770969373@gmail.com> In-Reply-To: <1485880029.6360.118.camel@edumazet-glaptop3.roam.corp.google.com> References: <159b79aa979.e23be6a5186096.2767722456700391441@gmail.com> <1484852027.16328.33.camel@edumazet-glaptop3.roam.corp.google.com> <159f4b9e4ab.12b79bda8122843.8859202944513905410@gmail.com> <1485880029.6360.118.camel@edumazet-glaptop3.roam.corp.google.com> Subject: Re: Inconsistency in packet drop due to MTU (eth vs veth) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Priority: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org /F ---- On Tue, 31 Jan 2017 17:27:09 +0100 Eric Dumazet wrote ---- > On Tue, 2017-01-31 at 14:32 +0100, Fredrik Markstrom wrote: > > ---- On Thu, 19 Jan 2017 19:53:47 +0100 Eric Dumazet wrote ---- > > > On Thu, 2017-01-19 at 17:41 +0100, Fredrik Markstrom wrote: > > > > Hello, > > > > > > > > I've noticed an inconsistency between how physical ethernet and > > veth handles mtu. > > > > > > > > If I setup two physical interfaces (directly connected) with > > different mtu:s, only the size of the outgoing packets are limited by > > the mtu. But with veth a packet is dropped if the mtu of the receiving > > interface is smaller then the packet size. > > > > > > > > This seems inconsistent to me, but maybe there is a reason for > > it ? > > > > > > > > Can someone confirm if it's a deliberate inconsistency or just a > > side effect of using dev_forward_skb() ? > > > > > > It looks this was added in commit > > > 38d408152a86598a50680a82fe3353b506630409 > > > ("veth: Allow setting the L3 MTU") > > > > > > But what was really needed here was a way to change MRU :( > > > > Ok, do we consider this correct and/or something we need to be > > backwards compatible with ? Is it insane to believe that we can fix > > this "inconsistency" by removing the check ? > > > > The commit message reads "For consistency I drop packets on the > > receive side when they are larger than the MTU", do we know what it's > > supposed > > to be consistent with or is that lost in history ? > > There is no consistency among existing Ethernet drivers. > > Many ethernet drivers size the buffers they post in RX ring buffer > according to MTU. > > If MTU is set to 1500, RX buffers are sized to be about 1536 bytes, > so you wont be able to receive a 1700 bytes frame. > > I guess that you could add a specific veth attribute to precisely > control MRU, that would not break existing applications. Ok, I will propose a patch shortly. And thanks, your response time is awesome ! /Fredrik > > > >