Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp2321065pxu; Sat, 28 Nov 2020 10:04:19 -0800 (PST) X-Google-Smtp-Source: ABdhPJzc8wo+ZgF0F9qJN+pYz49JvKWdqFNeJ+EfwpBSw5J63xwkvBUBr7e/ZmH5SrQFGtxjX1Hj X-Received: by 2002:a50:9518:: with SMTP id u24mr13920093eda.124.1606586659653; Sat, 28 Nov 2020 10:04:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606586659; cv=none; d=google.com; s=arc-20160816; b=Qz/8I4IDQ5PymjGRmPxe/XWbbaatyZC4uUclPP8FgmkShRXZI+ae8opPJKBwC8e3m9 Frq/dhqCw3KY8oOT4mTJDly+LrWG+QTIKcB3Q+X2GF3jpKj3+fxTeiHYg3lhwi4VquM+ pwJ6kHv50w3MAof1a0jJUJKtfVZO86xojjgrvwK7xldh9gA0ZGYsxUNU8xiDJ5jY6wBH 1kKBpleASVJL21BMUA17m6QNNrhxsQ2DEgs7KdFC628c2UTgfPRf0/unariYNWNuicPO SHmPe4ctfn+rIEQKXwo4HCeMtPqD+yOf6SQk5wlTLbOxsw49mgSNJpukOCMWLOForx0y cSVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from; bh=VvCJLIdR5Go1c17Zo3fWIj+nO5r5lLgDap2xR37nD8E=; b=AT5cZUuh2VGOl1F4uxg0Too+/6gVHNxLLG1DATYnDd2zb9NiAh2pk4tCYq7QIoHcCV kjq7vBEI2cJ6Txus3bHzJV1ZRjUZ5HXawINFHPCBXt+aVDY7l0qr1SYbn7+1K172Jau6 BuB9RF1gHq+o18ilDT9TRzXQLXVmolt35T/yL5J19aQ4tTSFdfzX23yFobxJZPWzREzv xVRBSN/TnJOxaVrGQb2BjYCiBjxZ5qDPVa2v+icP3vCrf+6BtF2G8N7UCbEBo9G95NzM njutRLDaCUwrgwuJjUNO3m4vNNWIfFbbGOLKOIn9iGPP1qj7wHz/4c4kBLPgT4qrtsJO fJ4Q== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x8si11198442edl.492.2020.11.28.10.03.57; Sat, 28 Nov 2020 10:04:19 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732288AbgK1ERU (ORCPT + 99 others); Fri, 27 Nov 2020 23:17:20 -0500 Received: from szxga06-in.huawei.com ([45.249.212.32]:8456 "EHLO szxga06-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731751AbgK1ENi (ORCPT ); Fri, 27 Nov 2020 23:13:38 -0500 Received: from DGGEMS407-HUB.china.huawei.com (unknown [172.30.72.59]) by szxga06-in.huawei.com (SkyGuard) with ESMTP id 4CjcxS3jzdzhhdR; Sat, 28 Nov 2020 11:51:40 +0800 (CST) Received: from localhost.localdomain (10.69.192.56) by DGGEMS407-HUB.china.huawei.com (10.3.19.207) with Microsoft SMTP Server id 14.3.487.0; Sat, 28 Nov 2020 11:51:49 +0800 From: Huazhong Tan To: CC: , , , , , , Huazhong Tan Subject: [PATCH V2 net-next 6/7] net: hns3: add a check for devcie's verion in hns3_tunnel_csum_bug() Date: Sat, 28 Nov 2020 11:51:49 +0800 Message-ID: <1606535510-44346-7-git-send-email-tanhuazhong@huawei.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1606535510-44346-1-git-send-email-tanhuazhong@huawei.com> References: <1606535510-44346-1-git-send-email-tanhuazhong@huawei.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.69.192.56] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org For the device whose version is above V3(include V3), the hardware can do checksum offload for the non-tunnel udp packet, who has a dest port as the IANA assigned. So add a check for devcie's verion in hns3_tunnel_csum_bug(). Signed-off-by: Huazhong Tan --- drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c index 3ad7f98..1798c0a 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -828,8 +828,16 @@ static int hns3_get_l4_protocol(struct sk_buff *skb, u8 *ol4_proto, */ static bool hns3_tunnel_csum_bug(struct sk_buff *skb) { + struct hns3_nic_priv *priv = netdev_priv(skb->dev); + struct hnae3_ae_dev *ae_dev = pci_get_drvdata(priv->ae_handle->pdev); union l4_hdr_info l4; + /* device version above V3(include V3), the hardware can + * do this checksum offload. + */ + if (ae_dev->dev_version >= HNAE3_DEVICE_VERSION_V3) + return false; + l4.hdr = skb_transport_header(skb); if (!(!skb->encapsulation && -- 2.7.4