From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2052842D83 for ; Wed, 28 Jun 2023 16:11:37 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1B7E9410F6; Wed, 28 Jun 2023 16:11:37 +0200 (CEST) Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by mails.dpdk.org (Postfix) with ESMTP id 6E78A40151 for ; Wed, 28 Jun 2023 16:11:35 +0200 (CEST) Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-3113da5260dso5237233f8f.2 for ; Wed, 28 Jun 2023 07:11:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687961495; x=1690553495; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=l/32+ZiDjE5ETj58e4ZmSiK9JOqYjkxY99qEpyfej+I=; b=p9jHbcBR75ygkXB0dPSBeXAia+UgL0PPIBvTEcGqTv+6+AlOyf2tKNG2CdRZejfoGk n4v37nkOfGH7cGjYjIWIs5p6BqrWoxvuLlU+0dxpsMRApFXB7GaLTTSAk6is2imxJKeW crLItCjKcHa1go1SgvSRI47LxwOIN52HD0cIahRxSJHDy9MAtNOkq3CkeQOPvkMXQupd xY5R9AUs1IIWBKes+6evE0pQ2XblsMmjgVtpWO2PoXwmGOJ4wvkRSQFW/6I/tF0xMirs k1m6nxMr+kY0bic0BqFSXuT4Jbtc6CPN9q3V67nraSDCVky3DD0MzsJFGDz+Xku8cnnQ IZjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687961495; x=1690553495; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=l/32+ZiDjE5ETj58e4ZmSiK9JOqYjkxY99qEpyfej+I=; b=Pxfv0bzIz4ixv/14/n7ETy5kUIYuJToajANP5I69ZyVXAV56Pta+LO5YVMBRatX5d9 aeHW8ew8eOoddQkhdNp4Klkow0bqa+FvFh+AiTJ1d2XC95OSM5hdVbtWo/beLNVdxGWz xvMfGqlFZ1OIOp18i03v0FrzWLqB5BlLGqyQI3Mogw+V9DSGmvT19oiu/XU5IZZXG+5C qm+3v9s3ndPG6o0m74GiZ7cJtWvCkYB0PoeHUg1ZWZWCpj2vZwLPA6oM0hZDYh9f3OPc NIH+nAo2dOuL+KqAhuDOCPT2tpnT3BSQitBURb7V9iw5KCUGum5O9ScSnR+WlDOCOnFj 8P+g== X-Gm-Message-State: AC+VfDxw3vRrukPY7X22vqhy0hBGWDOeVmDr7nmv1zM+hpkbuTq4cPI4 XOuCBS0+KWtu4vckYidxfX7qJA6A4BH5pg== X-Google-Smtp-Source: ACHHUZ6kPP2o2NOVggRivPVYiDVSqvl/Cz14sc0gi8Mm7BAQSdfnEHfNJEti294lx+9ixMECcRihOA== X-Received: by 2002:adf:ec45:0:b0:30f:c9f5:7370 with SMTP id w5-20020adfec45000000b0030fc9f57370mr14616840wrn.25.1687961494831; Wed, 28 Jun 2023 07:11:34 -0700 (PDT) Received: from localhost ([2a01:4b00:d307:1000:f1d3:eb5e:11f4:a7d9]) by smtp.gmail.com with ESMTPSA id r11-20020adfce8b000000b00313f3c11512sm8047086wrn.89.2023.06.28.07.11.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Jun 2023 07:11:34 -0700 (PDT) From: luca.boccassi@gmail.com To: Peng Zhang Cc: Chaoyong He , Long Wu , dpdk stable Subject: patch 'net/nfp: fix address always related with PF ID 0' has been queued to stable release 20.11.9 Date: Wed, 28 Jun 2023 15:10:37 +0100 Message-Id: <20230628141046.2145871-13-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230628141046.2145871-1-luca.boccassi@gmail.com> References: <20230615013258.1439718-63-luca.boccassi@gmail.com> <20230628141046.2145871-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 20.11.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/30/23. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/2c720e48cb88e969e6ebaef5670aa61761031202 Thanks. Luca Boccassi --- >From 2c720e48cb88e969e6ebaef5670aa61761031202 Mon Sep 17 00:00:00 2001 From: Peng Zhang Date: Fri, 16 Jun 2023 16:57:23 +0800 Subject: [PATCH] net/nfp: fix address always related with PF ID 0 [ upstream commit 467370c93d73267c1d4417bff975cf812b878f48 ] Now the PCIE configure bar address is always related with PF ID 0. For the NIC with multiple PCI device, this will lead the host crash. Fix this problem by make the PCIE configure bar address related with the PF ID. Fixes: c7e9729da6b5 ("net/nfp: support CPP") Signed-off-by: Peng Zhang Reviewed-by: Chaoyong He Reviewed-by: Long Wu --- drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c b/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c index 69f6b165da..36bd648a3c 100644 --- a/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c +++ b/drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c @@ -66,8 +66,8 @@ #define NFP_PCIE_P2C_GENERAL_TOKEN_OFFSET(bar, x) ((x) << ((bar)->bitsize - 4)) #define NFP_PCIE_P2C_GENERAL_SIZE(bar) (1 << ((bar)->bitsize - 4)) -#define NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(bar, slot) \ - (NFP_PCIE_BAR(0) + ((bar) * 8 + (slot)) * 4) +#define NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(id, bar, slot) \ + (NFP_PCIE_BAR(id) + ((bar) * 8 + (slot)) * 4) #define NFP_PCIE_CPP_BAR_PCIETOCPPEXPBAR(bar, slot) \ (((bar) * 8 + (slot)) * 4) @@ -114,6 +114,7 @@ struct nfp_pcie_user { int secondary_lock; char busdev[BUSDEV_SZ]; int barsz; + int dev_id; char *cfg; }; @@ -255,7 +256,7 @@ nfp_bar_write(struct nfp_pcie_user *nfp, struct nfp_bar *bar, return (-ENOMEM); bar->csr = nfp->cfg + - NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(base, slot); + NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(nfp->dev_id, base, slot); *(uint32_t *)(bar->csr) = newcfg; @@ -325,10 +326,8 @@ nfp_enable_bars(struct nfp_pcie_user *nfp) bar->base = 0; bar->iomem = NULL; bar->lock = 0; - bar->csr = nfp->cfg + - NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(bar->index >> 3, - bar->index & 7); - + bar->csr = nfp->cfg + NFP_PCIE_CFG_BAR_PCIETOCPPEXPBAR(nfp->dev_id, + bar->index >> 3, bar->index & 7); bar->iomem = nfp->cfg + (bar->index << bar->bitsize); } return 0; @@ -843,6 +842,7 @@ nfp6000_init(struct nfp_cpp *cpp, struct rte_pci_device *dev) goto error; desc->cfg = (char *)dev->mem_resource[0].addr; + desc->dev_id = dev->addr.function & 0x7; nfp_enable_bars(desc); -- 2.39.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2023-06-28 11:40:08.627559036 +0100 +++ 0013-net-nfp-fix-address-always-related-with-PF-ID-0.patch 2023-06-28 11:40:08.064027671 +0100 @@ -1 +1 @@ -From 467370c93d73267c1d4417bff975cf812b878f48 Mon Sep 17 00:00:00 2001 +From 2c720e48cb88e969e6ebaef5670aa61761031202 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 467370c93d73267c1d4417bff975cf812b878f48 ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org @@ -22 +23 @@ -index e230c40051..658c618ee6 100644 +index 69f6b165da..36bd648a3c 100644 @@ -36,2 +37,2 @@ -@@ -116,6 +116,7 @@ struct nfp_pcie_user { - int lock; +@@ -114,6 +114,7 @@ struct nfp_pcie_user { + int secondary_lock; @@ -44 +45 @@ -@@ -245,7 +246,7 @@ nfp_bar_write(struct nfp_pcie_user *nfp, struct nfp_bar *bar, +@@ -255,7 +256,7 @@ nfp_bar_write(struct nfp_pcie_user *nfp, struct nfp_bar *bar, @@ -53 +54 @@ -@@ -314,10 +315,8 @@ nfp_enable_bars(struct nfp_pcie_user *nfp) +@@ -325,10 +326,8 @@ nfp_enable_bars(struct nfp_pcie_user *nfp) @@ -66 +67 @@ -@@ -779,6 +778,7 @@ nfp6000_init(struct nfp_cpp *cpp, struct rte_pci_device *dev) +@@ -843,6 +842,7 @@ nfp6000_init(struct nfp_cpp *cpp, struct rte_pci_device *dev) @@ -69 +70 @@ - desc->cfg = dev->mem_resource[0].addr; + desc->cfg = (char *)dev->mem_resource[0].addr;