Message ID | 1516789157-9234-1-git-send-email-matan@mellanox.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Ferruh Yigit |
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C1B8F12001; Wed, 24 Jan 2018 11:19:50 +0100 (CET) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0083.outbound.protection.outlook.com [104.47.1.83]) by dpdk.org (Postfix) with ESMTP id 415CDA84C for <dev@dpdk.org>; Wed, 24 Jan 2018 11:19:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=R0k9TmUljHWRjiAOAUqdsozFJxhPBTlI6ooW7qT8A/o=; b=E3CVPISucbT3NGNUDMRUJCF6NoA30kBS80AO6PnA2mblWnno/reEKT0FmbIrLzNuXJ6MVMVDIaBr1AmgtCi5sfrF0ldGJboKHcdadVkc0MI30+7JJyimlfuW188dyWvJlGo1HZU9jwWxtL08Ao57PLwwbu/ftPp1O/xbpVRVSds= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=matan@mellanox.com; Received: from mellanox.com (37.142.13.130) by VI1PR0502MB3808.eurprd05.prod.outlook.com (2603:10a6:803:12::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.428.17; Wed, 24 Jan 2018 10:19:46 +0000 From: Matan Azrad <matan@mellanox.com> To: Gaetan Rivet <gaetan.rivet@6wind.com> Cc: dev@dpdk.org Date: Wed, 24 Jan 2018 10:19:17 +0000 Message-Id: <1516789157-9234-1-git-send-email-matan@mellanox.com> X-Mailer: git-send-email 1.8.3.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [37.142.13.130] X-ClientProxiedBy: DB6PR07CA0019.eurprd07.prod.outlook.com (2603:10a6:6:2d::29) To VI1PR0502MB3808.eurprd05.prod.outlook.com (2603:10a6:803:12::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c6aa803f-1075-4714-856e-08d56313fede X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603307)(7153060)(7193020); SRVR:VI1PR0502MB3808; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0502MB3808; 3:WSc++DWF5kXB9XE/2mP+WMLJhn26Tq8bpRchMQNpEgKUXz6CFtMOcrnTmnv8gnxH1QIB6t2q//6Z6UHMGLTzXL5KFmeR0fqnrXv7S1PLNMqaM2jqQSrXNJDK6i+6hsJrZNhkK6dY8W15JxNjxdj33A3rwnDpmlk0a4EhTiyBhTutmg+yY3GdVle4d3s69DXLL5D8lNwIcsyjJGh2sgqvoCGxnY8gv3Xjvy240o5inLy+irnYbhHwppLeC8obtcEe; 25:c7Z+pFYfDJ+nm3tsUrD3GY9d4DnVk8IscJg1P7JPSBfmWypzzPQF9lWky4fmJ/CJ363TJlkliVwbeTJ3Q+SHDAh9np+cO9H4EWVpt8enizws5QjkjPV6g/VxUJCF9+a0vnD72/vjGQEL4eSs7MC6ZySHoKh0gTOy5w0DKLtenjx+Xn2t5Zov0VFN45br15lgoM/5Hwz1HKiol5Bjkg/fqPTqfCv+eBfRq/e4F1JIziBBdIpjG4/93G3Ku4ziQne+YJDLUrSdmGzLxkzFHcjI2l7KHCw7OAgvXsL6cFGduiqhb+4Er7AvdmEYPtzfS+Aob/5OTqUnR5PHY3tLWzo6Bw==; 31:dMv6DiLP6zTmvZ/VC+HFj4OfEVB/4P2wtLMtI60ZaoWLIiD82cLWiFvTAMYYSWXYWpp4vBP6644DFOZ2YjNLfCKU4CNO6n/v72pzX0uX0F5DDNVNcsoUWrsqgNbOQI8WsyiY77pMPPx3DQ1wSKiaroMzz2lMSAfJNk9QzW2W3WczAYCAKDIhMDemxnNEeFhKBXB7eFTeIS/hlzfy8WzjSXPugklqIgS1g0sLUmQZVJA= X-MS-TrafficTypeDiagnostic: VI1PR0502MB3808: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0502MB3808; 20:w0SKddSAf6HXBXovnaxKC4PAAL/OQyVIvlbBRgBFXcf4MN1f8LgLYK7NAZcYu5aZWsJNoXqsvx/1eWpxOo8+9UzfIZJ/5Abg0XB33iye45pzIGoSHokzkxwor/zdNYj8JuFZHIRmpR8pLvVN7sZ/KuxtTS7Lnx5CyQXMRHd/RkZdsHRJuUL9zVm8owB5TOvloN10lsJ8Oj0H2RPhTi/fEhWoD8R9wcUX8CATlY7xoC01C8nhbC3e8vQ2OjKMVar4kLdJSHqcVePqqszNAFWu7eCKn97S436mzUfCiFMHwEMFVWMqY/yLrnkoGewaCyeF/68NseRkh1PX7kFL9lU4sWnoPuwFjzEij6vO93570xgRq2PEaiwzZMCLqiESHDo4nKGuy16BQAHmZmydOzaJQW26dX/Xv7GD4oHNZUPzL008xdNGYF5fduh3dG7VgqFAgec91Qi2dhPNxrzzuKd94DLk6ZqlVT+kTz9+xNqdH4gPEH7Kku6G340tgEgtrdZQ; 4:P+fvnmLSBrq8gtYtjZNesLUKvpvdkA47RDOVxpIjLVpgU250vtN1zN420KNVgmKzoPUA0Ujl7J0bqaOEj1W6OnBCFf7CslES912oZwPHZdiyx5GLzDoK3F8W+h3+h8nGQV0l/kZhEACT5cL3rpGYEnlN+EKuJriV4NkFXatjyT1sej3ehH86Ew0GTIwAL35S5/WkxojGUGDR53bdWoJKmH03/uet0KjQ4EfKUlDA5ylAjL2+V3cZ+llyG4Rm4UXSFju1sRnuA82nFYwp71vYeg== X-Microsoft-Antispam-PRVS: <VI1PR0502MB3808E74C7BF396F5AD3100D1D2E20@VI1PR0502MB3808.eurprd05.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(10201501046)(3231023)(2400081)(944501161)(3002001)(93006095)(93001095)(6055026)(6041288)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(6072148)(201708071742011); SRVR:VI1PR0502MB3808; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0502MB3808; X-Forefront-PRVS: 056297E276 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(366004)(39380400002)(39860400002)(396003)(189003)(199004)(8676002)(105586002)(51416003)(53936002)(68736007)(52116002)(7696005)(50226002)(8936002)(386003)(3846002)(81156014)(81166006)(106356001)(16526018)(47776003)(97736004)(48376002)(478600001)(66066001)(33026002)(6116002)(7736002)(6666003)(50466002)(16586007)(316002)(55016002)(69596002)(36756003)(6916009)(21086003)(4720700003)(5660300001)(86362001)(26005)(305945005)(4326008)(2906002)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0502MB3808; H:mellanox.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0502MB3808; 23:/fZB+82nS40+bnvvEMegukrGuALCVHLTEePv80n?= RU8SUmuJwhUDWyqLI81EEx2gCs1QebMxSjhZTQKaboZ+8bbza8+Jo7b1guCstR5ZSE12GkSGge8RoWl9AkMwLSkQ8A5LmQjrBmb1mA3URz7C/tEs3wPPMF4BftcpHvCG2XEqztC3z1CJxFTVeY+VBvYVhSTBJdnyyXTb5Cgbao56FezT63+I3p209AvLugEU/x3PEEK+Uf7QiOljmnIUNDz2NDL54zv2bwNJHtkcrt/TUe4Be2WZZW9lc+b93z1mE+q5y9wadCn8z9Ex7Knl82/dfrZpmSGfA9adnTA/+bszPxwZ/jqPN8dl8M6mKkkRaACEeHYVFHvIxKwHDoUA49kMTJotoVnVRhEQ4cC0SP07Gq0h/nsrRZ42zt3B8rDUbwGMWTZCZjREmtLvU4YgF7XA9e3JHpxAIk0Phin4Q27ZzWJBKwM4061euCNGitylRBFlJ/w/5Z3ru8cTIsAHJmg2r7LSIEudwnCxZzEBV6s8YeSLj49ocWTutOUos4bPR+TPalqb+OWgPW2S9fMaiTW1wbbGlSf1oe6yyPfEnbTPU0crD1vbE75hRxATLWBMmpcJ06NGSRQMXbUmAysXxqW0hr2vcoXPHB7mPTCthsqpeAzc1L6tDtK2OhoU1MIKZ5HlkIi356bkPiXW3KOhfY/5+rcoQ122HKmKygA6ED/jcaHP+58d8bbASKAJJMsBN7D5EmCzS1yYuNrsheQBbtBe+IwwI0wfceP1aoKMh/rKCEUrHVmSRWI4V5y6duHphqQp2nwvbsY80RdBml3Awh5IVTHXdasI96C36aMc+iMu8TZXAIzG7Mjy5Lj0P7EpdsBi2I2G1LmgrnTpdJQxq28jd7dOuWmzOkCo7/8TA/XZO7WNkhoD0zd3CltUykYQ+Vc1mJK0HchnfdUAB6at3XDyFeg5IZyvZ6iRgkeeim+ADhcXTf+wGuierbZRXljfiugURIQpyhu38t6+AXsI9PyNxqKZ82tHzsw/yCR96eG0MobgEvqOFOUv0s3fN+vxJBMYc6FabJWyqq45yb09BF1KU+wRfffzo8Pni9mJtEfwkqOTqg1JYUjj9tiUbh04vnUc= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0502MB3808; 6:0VyqPX6PkTemyz6WmKn9kok9WLZ3pqyNluIWqh58zD0Z/AfGJYTlDYRzC5xQfUy/OSj1+2/9JHrFmx6dpw2TQgw8LCQQFpEMTqLZAVCe+JZXizMLC6w6a/eChS8UIXiQ6soLoFi93pwkfHDZPKkoJOZBtCtgu+mhFtJVpKCxTO9JQVag/+mG+DAPXfnselQACojeSjaEmp5j0zcD0/mCedb0SjW0K+q1Q2n22yGJm98vhPgqJFS+yp4cSxcaVN7p18V0AX+RLLSDNPGHDrzpmZXSRejSxZDoGTW7ERAMqNTqHTVQkZIZCgpdMfkh7JDSkTvdf1rlUkqHURWYNuQ85UuvDAJAuxAfDnarTHFhuO8=; 5:hx7on2X79hAIPIlVKkcZdRiTKROPJNOA6kqQ+ND/a05ZOvBQQmcXzLf6Z/5KtYqGqNLN93gH40MxyMX6BkHmhSWjdmeWjq70nfU3gNXqrVhqsi4RXTUTuzlifLWpBHRP+rH3mHby69FL+Rm7o0erHvnHteAm6GhELQyQqoSvGvo=; 24:PWgTIAQXGcLL+/YxyilE///ebaHgeVtoI4ixpWmsXjTcPjHja5CtulM1IKxqVZOT/uH5r3Kw5/5JYNiklj6DWhdOrAjfagPYBnLRityVSYg=; 7:bA4IFE+/+E7RUwK9MDbMpFCeTwpGWPIzTlNd1JfIpNeI3JXDxddSQCiwqIzK9mZwRSlF3PzsxKNubXMY5QlwqzeXwynJQMnGx175mAGX+PEVB7hD493FQBb2+teBbo8QZDf6LB9QOiGCGRPWgxPPp3QA176ovhsEaOkvw7/ElsKnl2iH8zReokOOMfoFj2qe3aPfcbuqwiIdiTUiVE4qU5dStmuzFDGY3rxRzTWlRzmM7Qy76lvo4KK9XlLe3yt5 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jan 2018 10:19:46.8380 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c6aa803f-1075-4714-856e-08d56313fede X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0502MB3808 Subject: [dpdk-dev] [PATCH] net/failsafe: fix Rx burst infinite loop X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Checks
Context | Check | Description |
---|---|---|
ci/checkpatch | success | coding style OK |
ci/Intel-compilation | fail | Compilation issues |
Commit Message
Matan Azrad
Jan. 24, 2018, 10:19 a.m. UTC
In case of plugged out device, the fail-safe PMD uses failsafe_rx_burst
function for packet receiving.
This function iterates over the present sub-devices until it
receives a traffic from one of them or they are all cannot receive
packets.
The corrupted code didn't advance the sub-device pointer when the
sub-device was not present and caused to infinite loop.
Advance the sub-device pointer also in plugged-out sub-device case.
Fixes: 8052bbd9d548 ("net/failsafe: improve Rx sub-devices iteration")
Signed-off-by: Matan Azrad <matan@mellanox.com>
---
drivers/net/failsafe/failsafe_rxtx.c | 1 +
1 file changed, 1 insertion(+)
Comments
On Wed, Jan 24, 2018 at 10:19:17AM +0000, Matan Azrad wrote: > In case of plugged out device, the fail-safe PMD uses failsafe_rx_burst > function for packet receiving. > > This function iterates over the present sub-devices until it > receives a traffic from one of them or they are all cannot receive > packets. > > The corrupted code didn't advance the sub-device pointer when the > sub-device was not present and caused to infinite loop. > > Advance the sub-device pointer also in plugged-out sub-device case. > > Fixes: 8052bbd9d548 ("net/failsafe: improve Rx sub-devices iteration") > > Signed-off-by: Matan Azrad <matan@mellanox.com> Acked-by: Gaetan Rivet <gaetan.rivet@6wind.com> > --- > drivers/net/failsafe/failsafe_rxtx.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/net/failsafe/failsafe_rxtx.c b/drivers/net/failsafe/failsafe_rxtx.c > index 1654494..aeee076 100644 > --- a/drivers/net/failsafe/failsafe_rxtx.c > +++ b/drivers/net/failsafe/failsafe_rxtx.c > @@ -104,6 +104,7 @@ > do { > if (fs_rx_unsafe(sdev)) { > nb_rx = 0; > + sdev = sdev->next; > continue; > } > sub_rxq = ETH(sdev)->data->rx_queues[rxq->qid]; > -- > 1.8.3.1 >
On 1/24/2018 10:31 AM, Gaëtan Rivet wrote: > On Wed, Jan 24, 2018 at 10:19:17AM +0000, Matan Azrad wrote: >> In case of plugged out device, the fail-safe PMD uses failsafe_rx_burst >> function for packet receiving. >> >> This function iterates over the present sub-devices until it >> receives a traffic from one of them or they are all cannot receive >> packets. >> >> The corrupted code didn't advance the sub-device pointer when the >> sub-device was not present and caused to infinite loop. >> >> Advance the sub-device pointer also in plugged-out sub-device case. >> >> Fixes: 8052bbd9d548 ("net/failsafe: improve Rx sub-devices iteration") >> >> Signed-off-by: Matan Azrad <matan@mellanox.com> > Acked-by: Gaetan Rivet <gaetan.rivet@6wind.com> Applied to dpdk-next-net/master, thanks.
diff --git a/drivers/net/failsafe/failsafe_rxtx.c b/drivers/net/failsafe/failsafe_rxtx.c index 1654494..aeee076 100644 --- a/drivers/net/failsafe/failsafe_rxtx.c +++ b/drivers/net/failsafe/failsafe_rxtx.c @@ -104,6 +104,7 @@ do { if (fs_rx_unsafe(sdev)) { nb_rx = 0; + sdev = sdev->next; continue; } sub_rxq = ETH(sdev)->data->rx_queues[rxq->qid];