Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp664487pxb; Wed, 27 Jan 2021 18:26:25 -0800 (PST) X-Google-Smtp-Source: ABdhPJySkDwhpo1cdUayLPpVeJxH2/ZEQJGMCTk4EsDo4l5S2HfhVdPRoH6PCfDSkueRKrvfiCkN X-Received: by 2002:a50:fc8c:: with SMTP id f12mr11695278edq.225.1611800785633; Wed, 27 Jan 2021 18:26:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611800785; cv=none; d=google.com; s=arc-20160816; b=eU1kZ1h2C/NRAioVpc6bcoFNAGWbrLPVk2I6psZYBCa8idGt1fXfrvdkui/ZLcrrjq R1PM64woCYBU2L2/EMS3LtbOlU9qzHT8Dt64vbd+on5bM5Z6FAyhjAoYG7L8rqWoZsH5 dEwVeVe/r8w043GXcQ05DXkicJWWX+xuXDZyrZNh3AwTdcw1EhRicnm43sktPZLYHpTR l0SKia2gJ+kKyS6UuG7kQejBncrpAkljnsRRFv8ZxH/cIModOlSGJIWs5uN8/g9C6lt+ S/q2ov1YkSCqwNe2gjnHlPSeAbagEJtXJLECL6pGSwmB28gJFv0Q611M0BrUj1Gj5RJ3 5XKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature:dkim-filter; bh=XSJSHPMBm5jf1Z3m/AIYw0yoEWl/9Ts3XB1wbPhERdg=; b=dQPgFoIQ9VfGUj5G8hDhbFJJW44xbXH9gatSynGZw4Ve3l4IvJ3lzxajK/i60nzkmI hWY4LjjHbTkGKkqYFCSxNoZ2RBDQy6JxjwIapYDB9HU/J+Gxds0v9jZmp9tHcseyz9OS vnhQaZXzGrmm4drytaTauQ3cvIfkCrE6HQfoE2huvZZ432OAfsJbQlwG3wMdV54nS85Q L6fnqzRv/N3k6Y/ZzdCUTS+ZL3439gXpCoNZiEklN9X1iCsSSInNtieyURcWJvpZepBi 68Em2FbyxvJJljUckIkgV12vzZfGVfnnK0gPe1F82n1bfzDRd1+psJuzff5OM4HO7fK+ L3GA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@novek.ru header.s=mail header.b=VjpJ8Nyk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id be5si1874643edb.385.2021.01.27.18.26.02; Wed, 27 Jan 2021 18:26:25 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@novek.ru header.s=mail header.b=VjpJ8Nyk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231293AbhA1CXR (ORCPT + 99 others); Wed, 27 Jan 2021 21:23:17 -0500 Received: from novek.ru ([213.148.174.62]:45820 "EHLO novek.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231236AbhA1CWO (ORCPT ); Wed, 27 Jan 2021 21:22:14 -0500 X-Greylist: delayed 542 seconds by postgrey-1.27 at vger.kernel.org; Wed, 27 Jan 2021 21:22:12 EST Received: from [172.23.108.4] (unknown [88.151.187.251]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by novek.ru (Postfix) with ESMTPSA id 04062500472; Thu, 28 Jan 2021 05:13:35 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 novek.ru 04062500472 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=novek.ru; s=mail; t=1611800017; bh=srbIJEcnPkE+WNttQaQEC79yNHWefbohWspktG1+KEk=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=VjpJ8Nykv73jHf1cgzHpK2gmwgPQ0vIWz2Wh1IDm18IhaJCteRtqWHQym10sWVYHb oMwRc9rXlujQ4li6VGG/jE6EaaaWCDw1nMZPk5qgOutL3wXnmPCVz2ja994F3fEakM 9JY4eQGKUZFOaF0yrlG1HEYBxr/y+tcHPiq+LfCg= Subject: Re: BUG: Incorrect MTU on GRE device if remote is unspecified To: Cong Wang , Jakub Kicinski Cc: Slava Bacherikov , Willem de Bruijn , open list , Linux Kernel Network Developers , Xie He References: <20210127165602.610b10c0@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com> From: Vadim Fedorenko Message-ID: <86788b50-90eb-12e6-4038-7f48cccfb129@novek.ru> Date: Thu, 28 Jan 2021 02:12:16 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,NICE_REPLY_A autolearn=ham autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on gate.novek.ru Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 28.01.2021 01:38, Cong Wang wrote: > On Wed, Jan 27, 2021 at 4:56 PM Jakub Kicinski wrote: >> >> On Mon, 25 Jan 2021 22:10:10 +0200 Slava Bacherikov wrote: >>> Hi, I'd like to report a regression. Currently, if you create GRE >>> interface on the latest stable or LTS kernel (5.4 branch) with >>> unspecified remote destination it's MTU will be adjusted for header size >>> twice. For example: >>> >>> $ ip link add name test type gre local 127.0.0.32 >>> $ ip link show test | grep mtu >>> 27: test@NONE: mtu 1452 qdisc noop state DOWN mode DEFAULT group >>> default qlen 1000 >>> >>> or with FOU >>> >>> $ ip link add name test2 type gre local 127.0.0.32 encap fou >>> encap-sport auto encap-dport 6666 >>> $ ip link show test2 | grep mtu >>> 28: test2@NONE: mtu 1436 qdisc noop state DOWN mode DEFAULT >>> group default qlen 1000 >>> >>> The same happens with GUE too (MTU is 1428 instead of 1464). >>> As you can see that MTU in first case is 1452 (1500 - 24 - 24) and with >>> FOU it's 1436 (1500 - 32 - 32), GUE 1428 (1500 - 36 - 36). If remote >>> address is specified MTU is correct. >>> >>> This regression caused by fdafed459998e2be0e877e6189b24cb7a0183224 commit. >> >> Cong is this one on your radar? > > Yeah, I guess ipgre_link_update() somehow gets called twice, > but I will need to look into it. > > Thanks. > Hi! The problem is in ip_tunnel_bind_dev() where mtu is set for tunnel device. if (tdev) { hlen = tdev->hard_header_len + tdev->needed_headroom; mtu = min(tdev->mtu, IP_MAX_MTU); } dev->needed_headroom = t_hlen + hlen; mtu -= (dev->hard_header_len + t_hlen); ipgre_tunnel_init sets hard_header_len to tunnel->hlen + sizeof(*iph) and ip_tunnel_bind_dev adds header overhead once again. I'll post a patch a bit later but I need someone with extended tests. Thanks