Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp759000pxb; Wed, 27 Jan 2021 22:14:32 -0800 (PST) X-Google-Smtp-Source: ABdhPJwdvaAYWNjbvNspswMJzu09IX0SzWHtuwtPXOEu3zttyZC9hR23QuCF/UogjZJWSRIw+Ubg X-Received: by 2002:a17:906:404a:: with SMTP id y10mr9500666ejj.331.1611814472254; Wed, 27 Jan 2021 22:14:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611814472; cv=none; d=google.com; s=arc-20160816; b=FOpxudGvNL9RI6NiM0ycAE/z0rNTSFyF6bj3uC1KwiC2fiWstLhOOXH7DRgT739vHh PIF+boaVKYRERGFVxVz6S+snaYql+d47bkCWUxbtVePPIcHRYgJr4qKLN5P62VeWGi0c ClEILw/40RBXMfvk9FQP7+TfZLuKegIvA/pfEzc5jsEO2IHsFjKFWaAFENdXycCpxouj fzWZMjrgEf6dbgrMI1ikPqOJvkl+1+NS/qfd1DPymaMtyBsIkWr+rDVg5xDDzy5lbIJ+ 8lrxexHwRa1hQLZ6br6tfUo/m5z5pLiVzB90EE5G3Vo0pcnQhOAyUEM2GMzMWLGC6CHd b0cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=uIrIAUe19Djm39nwWwfySKTkMqUVqabiBsJoT4fwDr0=; b=ScrMDuIIzDw2AGobucwDo0Jb+MRfCjWDupL8oaupJnzAlZWbwJmMz3It0gWsqN2g7U AfwzED3w6RY9v1I+jFvsHk2EzpjZBslAC+2QGxqdOJl+nGZsSzsLlCJvVEvVV7rw6tix 0hWbk/tFocJvpl7kVclBZvsle7lQrqxeg6y/u2H0n/T5SXzlxDo4v1sC7mlzhMceMyS6 Zr5Lqu0DlsB3+rDcAP995PQyUsLoenZW8syRXyv+LUYVG1fefBnJ/bYCoI0Zkk5+6wMT t0mRysmYmKWhPze2z0Lqs1GoIW7UDOlY0yxQDlmxJa+Z3uGWPwfRbDr0OUIb+xMSeAC1 vyfQ== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m24si1922306ejg.728.2021.01.27.22.14.08; Wed, 27 Jan 2021 22:14:32 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231329AbhA1GL3 (ORCPT + 99 others); Thu, 28 Jan 2021 01:11:29 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:52571 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S231317AbhA1GL2 (ORCPT ); Thu, 28 Jan 2021 01:11:28 -0500 X-UUID: b750d5c8d9ce4689b0573bbc227ffbec-20210128 X-UUID: b750d5c8d9ce4689b0573bbc227ffbec-20210128 Received: from mtkmrs01.mediatek.inc [(172.21.131.159)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.14 Build 0819 with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 523626734; Thu, 28 Jan 2021 14:10:43 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs01n2.mediatek.inc (172.21.101.79) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 28 Jan 2021 14:10:39 +0800 Received: from localhost.localdomain (10.15.20.246) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 28 Jan 2021 14:10:39 +0800 From: Rocco Yue To: "David S . Miller" , Hideaki YOSHIFUJI , Jakub Kicinski , Matthias Brugger CC: , , , , , Rocco Yue Subject: [PATCH net-next 2/2] net: ipv6: don't generate link local address on PUREIP device Date: Thu, 28 Jan 2021 13:58:09 +0800 Message-ID: <20210128055809.31199-1-rocco.yue@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: 7B2B7C4553CCBA3F7B9FFADABE25EC8F855F847BDA9C4A9AB060FB4FE6B5835C2000:8 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org PUREIP device such as ccmni does not need kernel to generate link-local address in any addr_gen_mode, generally, it shall use the IPv6 Interface Identifier, as provided by the GGSN, to create its IPv6 link-ocal Unicast Address. Signed-off-by: Rocco Yue --- net/ipv6/addrconf.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 9edc5bb2d531..5e8134d3e704 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -3337,7 +3337,8 @@ static void addrconf_dev_config(struct net_device *dev) (dev->type != ARPHRD_IPGRE) && (dev->type != ARPHRD_TUNNEL) && (dev->type != ARPHRD_NONE) && - (dev->type != ARPHRD_RAWIP)) { + (dev->type != ARPHRD_RAWIP) && + (dev->type != ARPHRD_PUREIP)) { /* Alas, we support only Ethernet autoconfiguration. */ idev = __in6_dev_get(dev); if (!IS_ERR_OR_NULL(idev) && dev->flags & IFF_UP && @@ -3350,6 +3351,12 @@ static void addrconf_dev_config(struct net_device *dev) if (IS_ERR(idev)) return; + /* this device type doesn't need to generate + * link-local address in any addr_gen_mode + */ + if (dev->type == ARPHRD_PUREIP) + return; + /* this device type has no EUI support */ if (dev->type == ARPHRD_NONE && idev->cnf.addr_gen_mode == IN6_ADDR_GEN_MODE_EUI64) -- 2.18.0