Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp922453pxb; Wed, 1 Sep 2021 12:46:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz15VkrysPlT0Lb7pkI0XmqoXM4ETOg3EEgzyAWxjOxNmYe6tkR68bsM9naiT0tAkwKh0DW X-Received: by 2002:a05:6638:e8f:: with SMTP id p15mr1118975jas.114.1630525571695; Wed, 01 Sep 2021 12:46:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630525571; cv=none; d=google.com; s=arc-20160816; b=jihdqaF/VnnH7Wy2GyHAaYcviBFXQUrZXk5nKsYRuMiC3unom0iA1sghU6aF4nRtHi 6k0AlfbCkBfZ4/N3NOWPixmHpQ3VdhkKWdFZKK8N3Jubd0A2usS0ieItuh3NtSCSXtb4 Favvb4Ir+lJlitfy7H5NZEqifwIavITar3FdbdkxTcWmRLL2AqDitoeoabL3788ejtzl XhMBu65QeEe72zTNHusT/vhQJET/XizgDmawSCzVltPvXwcqBWlwZpUSNPJ6M76QG8na 505Wz4B58w8r8dfLe3LKQe3EWnA5PES7ZPcmtkBdJw39MotTT1I7krQNInPligNU5D0e EFjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=o54bfvsyLBLxlzy/1K9Idb3iU0gqQ+3lG1RbFdWTJW0=; b=b6wbzQzWv5LvLOd+O8krgmSGK9x6OMVX470y1Ah7qaxChnxj/Fbkixzny9gZc5ODxt TfTbR7rpZ8A2vi1ZbU70KxyDK4KHycLJXku7zT9gJJus0EiF6ds0efy+SisAvmZ45ZQW GxWX6HMsgJMO+Z1mI+gM1CFa3QNiTiGIWo4N8Mv8SBh5/EInv2Zt7rqzQ96aKdxZat42 /j4AwPun+ivk+2BTiqfocfu9Dv4Btn/fqAs6AQYiRvjj+oiilb94+iqRWFBtmUao6Ll6 d7daboI+Q1+x3LEOHuMRlwWEFQVxXWrorJ2SirY9euv0wg623BGc8Lxy3JZ6ujQTcZov gk9w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=2OoHJ8iK; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g3si568992ila.102.2021.09.01.12.45.59; Wed, 01 Sep 2021 12:46:11 -0700 (PDT) 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=@linuxfoundation.org header.s=korg header.b=2OoHJ8iK; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345149AbhIAMxm (ORCPT + 99 others); Wed, 1 Sep 2021 08:53:42 -0400 Received: from mail.kernel.org ([198.145.29.99]:53630 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346374AbhIAMty (ORCPT ); Wed, 1 Sep 2021 08:49:54 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 0724D611C0; Wed, 1 Sep 2021 12:41:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1630500086; bh=WPbEOBKBC6jdJIBzrm6mHtnk9ru3jB8C/pS+rDGsTcs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=2OoHJ8iKjnu6MOeEm16sVGnIwj7gcn0uHJA9g3uHL7ogke+1rXkR25JrO0baAJjfy 9aY9uzsrFLuS31T67uce7WogUwU17wNEnk8XnIpxzQpGEbIK79bhBkEaAy8yOJVltl wQd7mN7dYCqYWQzG/rodjls7Y5xO9kzT+Wv6ZvrU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Guangbin Huang , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.13 064/113] net: hns3: fix get wrong pfc_en when query PFC configuration Date: Wed, 1 Sep 2021 14:28:19 +0200 Message-Id: <20210901122304.104851901@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210901122301.984263453@linuxfoundation.org> References: <20210901122301.984263453@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Guangbin Huang [ Upstream commit 8c1671e0d13d4a0ba4fb3a0da932bf3736d7ff73 ] Currently, when query PFC configuration by dcbtool, driver will return PFC enable status based on TC. As all priorities are mapped to TC0 by default, if TC0 is enabled, then all priorities mapped to TC0 will be shown as enabled status when query PFC setting, even though some priorities have never been set. for example: $ dcb pfc show dev eth0 pfc-cap 4 macsec-bypass off delay 0 prio-pfc 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off $ dcb pfc set dev eth0 prio-pfc 0:on 1:on 2:on 3:on $ dcb pfc show dev eth0 pfc-cap 4 macsec-bypass off delay 0 prio-pfc 0:on 1:on 2:on 3:on 4:on 5:on 6:on 7:on To fix this problem, just returns user's PFC config parameter saved in driver. Fixes: cacde272dd00 ("net: hns3: Add hclge_dcb module for the support of DCB feature") Signed-off-by: Guangbin Huang Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- .../net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c index 5bf5db91d16c..39f56f245d84 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c @@ -255,21 +255,12 @@ static int hclge_ieee_getpfc(struct hnae3_handle *h, struct ieee_pfc *pfc) u64 requests[HNAE3_MAX_TC], indications[HNAE3_MAX_TC]; struct hclge_vport *vport = hclge_get_vport(h); struct hclge_dev *hdev = vport->back; - u8 i, j, pfc_map, *prio_tc; int ret; + u8 i; memset(pfc, 0, sizeof(*pfc)); pfc->pfc_cap = hdev->pfc_max; - prio_tc = hdev->tm_info.prio_tc; - pfc_map = hdev->tm_info.hw_pfc_map; - - /* Pfc setting is based on TC */ - for (i = 0; i < hdev->tm_info.num_tc; i++) { - for (j = 0; j < HNAE3_MAX_USER_PRIO; j++) { - if ((prio_tc[j] == i) && (pfc_map & BIT(i))) - pfc->pfc_en |= BIT(j); - } - } + pfc->pfc_en = hdev->tm_info.pfc_en; ret = hclge_pfc_tx_stats_get(hdev, requests); if (ret) -- 2.30.2