From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.4 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2E2C1C35247 for ; Wed, 5 Feb 2020 16:54:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id F004320674 for ; Wed, 5 Feb 2020 16:54:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=6wind.com header.i=@6wind.com header.b="bkW465nU" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727178AbgBEQy6 (ORCPT ); Wed, 5 Feb 2020 11:54:58 -0500 Received: from mail-wr1-f68.google.com ([209.85.221.68]:42013 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726957AbgBEQy5 (ORCPT ); Wed, 5 Feb 2020 11:54:57 -0500 Received: by mail-wr1-f68.google.com with SMTP id k11so3591794wrd.9 for ; Wed, 05 Feb 2020 08:54:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; h=reply-to:subject:to:references:from:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=3NP1jd/PWu2o3VZGYD8UbdZwy6Kd+7mItBo+9p9VRfA=; b=bkW465nUVHIu4dId9QrWVYVAc7bMnz+BB1fYdvb4hPEupsIdh8fmTSVLZLupT222rq ZD9Zvy+h2QaAURsIFrnKDKpHz1X6BKnQ27cip8Sj4snz5MSLNOSJ1/GYHbVN66VARZbV gq1qgmYnUd2LCa0J5s7Qnx5PYuVK0GmQdbI4p9lfrWbrHzc1qGJQegZCug5rhMVI0U7B wIFzWctKYnx4dDmVNmoICgLvGVKZ2/1zLqTQ7Bw7o3JdSXcpvmwQlLyrAnV4jPqNsTsU j5iFepexZ952G6+s1QYM3YRj4keCDayY7SYC38o8DRBDGWPjRWxO0tyuhHvLQN7wbGoG uXvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:reply-to:subject:to:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=3NP1jd/PWu2o3VZGYD8UbdZwy6Kd+7mItBo+9p9VRfA=; b=ifLfUbRiSblC+YH4lVolJU06j7QEM1Bu5BF7mprexutqTwCCWpQWKFhCbSvbIxiNho pTTh0t5VI0wi40Ur5jdxkh86jfMDpYsHIOp1Vix75IT6DxI01fpgWAmU+mU0+96TdwA2 bJAGezKVfCzFdjNhTwK5K4oRoAjSSwT3rVeHHkuzIcGPZsiFI2n1DNvEaUc7j40qBY8D fcHdizhzdKWSCOtjdnDPzKRl7fJptqME2FUclt0ay5t8ZBEZ/dvy9ZHV1z6bCFc+NRSP twMovGnZbpqDSkhmZmuw8Llik10SV55j9DlGIl97bWrt3054OfNWDeCjPo9pdcr5deCW oGoQ== X-Gm-Message-State: APjAAAUXMCwq1LsVioK/7qfqnBOdVwQnCGErLW3zKGdNdHUVLf5mKShJ 98U24wRnZMcKHPWhj45Bg038Pv92kzw= X-Google-Smtp-Source: APXvYqz+E+TGvAaVxCUdh8DX/YaMMGtEYX2yEqjKpJ7egXu+u/LW0cG6nM8x8I8DqqNu1ekp9Y/cMQ== X-Received: by 2002:a5d:5403:: with SMTP id g3mr31084900wrv.302.1580921695586; Wed, 05 Feb 2020 08:54:55 -0800 (PST) Received: from ?IPv6:2a01:e0a:410:bb00:9c0f:f129:76a:d5c? ([2a01:e0a:410:bb00:9c0f:f129:76a:d5c]) by smtp.gmail.com with ESMTPSA id o189sm224289wme.1.2020.02.05.08.54.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 05 Feb 2020 08:54:55 -0800 (PST) Reply-To: nicolas.dichtel@6wind.com Subject: Re: [PATCH v2 1/2] net, ip6_tunnel: enhance tunnel locate with link check To: William Dauchy , netdev@vger.kernel.org References: <563334a2-8b5d-a80b-30ef-085fdaa2d1a8@6wind.com> <20200205162934.220154-2-w.dauchy@criteo.com> From: Nicolas Dichtel Organization: 6WIND Message-ID: Date: Wed, 5 Feb 2020 17:54:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 In-Reply-To: <20200205162934.220154-2-w.dauchy@criteo.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Le 05/02/2020 à 17:29, William Dauchy a écrit : [snip] > diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c > index b5dd20c4599b..053f44691cc6 100644 > --- a/net/ipv6/ip6_tunnel.c > +++ b/net/ipv6/ip6_tunnel.c > @@ -351,7 +351,8 @@ static struct ip6_tnl *ip6_tnl_locate(struct net *net, > (t = rtnl_dereference(*tp)) != NULL; > tp = &t->next) { > if (ipv6_addr_equal(local, &t->parms.laddr) && > - ipv6_addr_equal(remote, &t->parms.raddr)) { > + ipv6_addr_equal(remote, &t->parms.raddr) && > + p->link == t->parms.link) { > if (create) > return ERR_PTR(-EEXIST); This is probably not so easy. If link becomes part of the key, at least ip6_tnl_lookup() should also be updated. You can also look at ip_tunnel_bind_dev() to check how the mtu is calculated.