Message ID | 20200309065106.23800-1-mattias.ronnblom@ericsson.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id DAB8CA052E; Mon, 9 Mar 2020 07:52:09 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 06E6F1C00F; Mon, 9 Mar 2020 07:51:53 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150049.outbound.protection.outlook.com [40.107.15.49]) by dpdk.org (Postfix) with ESMTP id 6287E1BFF5 for <dev@dpdk.org>; Mon, 9 Mar 2020 07:51:46 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d1e2SfAfLtqHe3TmkENqqPByP17Tnh0VMOOHhUKxBlrI+8hg41Hed68b5JFYtwojAxTAe5thUveLpttSuEez0Vh50mNugGcEYknMCXJXoMHrcG0Ehzp5AxW7IynfsvD64Ps0xz4XNkn6dfwIkHhvDyhMc+1kwfZKCCruaqUaRzxR/rMWbqmmmBbJQ6g6Kon0hMUcwWX7SRR1axiJjXoTpOULSNmXgCitCTUdi2BsaFGd4WMKyiDVuluWeWaksXtaXd2y+Ai/qzEvpfw8msPBknkD1Ksq4Hv0179aex8P9DVa9xu6+qXo8smOQKZ/NbOpKyg2JvmGzm+RsBaaqacPBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZmW813ESDEQpO5f1QImlS2tmzwX1xl45T9xk56lMtgA=; b=d9hG63tBDrYhko/mENHP4OgLvRXWp8Ft4s8HHfTQvOwP+pD1WP/1zHzYI9KMY+FDNEWN5jFui02ry8ganXTpuWDGZzdWFltlNUV7TI8zTslZxGhkmGHKp3u4tzPrMQQ/HJszGCBl5Fji0ohWWJMO+hmVqDUibrkUfyZEIvbmoPGu/5db4X8TIQBx25OawdL1Z16Ky831aPiIxLHIlluYUnxleGXUuwHW7zva+RNKL33IeO1bLEhj4u12DOeozsZM95XMfq2yovpcXAOhh0G/H8wQsVBKnSupywvx64FW6GLbD9rf5lCNyHueT2263z09ykMoUpnEBDa6Im8wgw0/+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 192.176.1.74) smtp.rcpttodomain=arm.com smtp.mailfrom=ericsson.com; dmarc=pass (p=reject sp=none pct=100) action=none header.from=ericsson.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZmW813ESDEQpO5f1QImlS2tmzwX1xl45T9xk56lMtgA=; b=J78cgLzzVq09EG1WNxL12QcWVE4c9AKGWLNufv04BKY1C7TtIovjIsy8elQofynhxfa9/8BI/2+BITIxOgBaMtbcTDBaZZo/W/2bl5oXqTaCIYYiKk5SscNMHihEV4OPWvq9pxcH5KEaTWCK2zPD3j4I2b4t9Wzl7Vy/h5ABNDo= Received: from AM6PR0202CA0053.eurprd02.prod.outlook.com (2603:10a6:20b:3a::30) by AM6PR07MB5365.eurprd07.prod.outlook.com (2603:10a6:20b:6f::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2814.5; Mon, 9 Mar 2020 06:51:45 +0000 Received: from HE1EUR02FT025.eop-EUR02.prod.protection.outlook.com (2603:10a6:20b:3a:cafe::1f) by AM6PR0202CA0053.outlook.office365.com (2603:10a6:20b:3a::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.16 via Frontend Transport; Mon, 9 Mar 2020 06:51:44 +0000 Authentication-Results: spf=pass (sender IP is 192.176.1.74) smtp.mailfrom=ericsson.com; arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=pass action=none header.from=ericsson.com; Received-SPF: Pass (protection.outlook.com: domain of ericsson.com designates 192.176.1.74 as permitted sender) receiver=protection.outlook.com; client-ip=192.176.1.74; helo=oa.msg.ericsson.com; Received: from oa.msg.ericsson.com (192.176.1.74) by HE1EUR02FT025.mail.protection.outlook.com (10.152.10.79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.20.2793.11 via Frontend Transport; Mon, 9 Mar 2020 06:51:43 +0000 Received: from ESESSMB503.ericsson.se (153.88.183.164) by ESESBMR504.ericsson.se (153.88.183.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1713.5; Mon, 9 Mar 2020 07:51:43 +0100 Received: from selio1a020.lmera.ericsson.se (153.88.183.153) by smtp.internal.ericsson.com (153.88.183.191) with Microsoft SMTP Server id 15.1.1713.5 via Frontend Transport; Mon, 9 Mar 2020 07:51:42 +0100 Received: from breslau.lmera.ericsson.se (breslau.lmera.ericsson.se [150.132.109.241]) by selio1a020.lmera.ericsson.se (8.15.1+Sun/8.15.1) with ESMTP id 0296pgIK024126; Mon, 9 Mar 2020 07:51:42 +0100 (CET) From: =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com> To: <jerinj@marvell.com> CC: <dev@dpdk.org>, <stefan.sundkvist@ericsson.com>, <Ola.Liljedahl@arm.com>, =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com> Date: Mon, 9 Mar 2020 07:50:58 +0100 Message-ID: <20200309065106.23800-1-mattias.ronnblom@ericsson.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:192.176.1.74; IPV:; CTRY:SE; EFV:NLI; SFV:NSPM; SFS:(10009020)(4636009)(396003)(376002)(39860400002)(136003)(346002)(189003)(199004)(5660300002)(70206006)(70586007)(2616005)(956004)(2906002)(1076003)(478600001)(186003)(26005)(54906003)(336012)(86362001)(316002)(6666004)(8936002)(8676002)(4326008)(36756003)(356004)(6916009)(7636002)(4744005)(246002)(107886003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR07MB5365; H:oa.msg.ericsson.com; FPR:; SPF:Pass; LANG:en; PTR:office365.se.ericsson.net; MX:1; A:1; X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 75924754-2c63-4980-ba58-08d7c3f65437 X-MS-TrafficTypeDiagnostic: AM6PR07MB5365: X-Microsoft-Antispam-PRVS: <AM6PR07MB5365761E5214F98B7AB59DC9E1FE0@AM6PR07MB5365.eurprd07.prod.outlook.com> X-MS-Oob-TLC-OOBClassifiers: OLM:4941; X-Forefront-PRVS: 0337AFFE9A X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rGfPMUaZaV2HES+ojbqRiaHo9Frmnf2KAUd7R/FbIyRgB49014AaU1CkllEM4Ap+Vn4HZ/wAcF6qlk/Pw/uJUizWDSA4jxKi8davjZAyPGykZ97UV1lR5uMDN2BzkZqwubPw8kGedUTxFYUTIHr49L14+gOAd/ETngXgFhxUk4cGxfxtBgktMepu96po6JFBKMA0qvY72WopLbPDD94gE65HAOCrToHbr/v6JkHGvAwuprINAZubrKTeuvMFWXuE3fN6ESJN9Pg1sY1S7bN8mGeTb4Fkq/jKPev8Th7P2QNeAVShhXSf4iZfPjy7/F2oBA5fQaCmIsmsX4A2aBNeLOCTHO5IztWl0dOAlyVbcmqWIg5XGy2xUosfVTFu4xTEfohUDNV+ekEhZEado3754YprPrss6i7DGV5EyqvToi+dJR/1XsySWJuJtar/A7x3 X-OriginatorOrg: ericsson.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Mar 2020 06:51:43.8233 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 75924754-2c63-4980-ba58-08d7c3f65437 X-MS-Exchange-CrossTenant-Id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=92e84ceb-fbfd-47ab-be52-080c6b87953f; Ip=[192.176.1.74]; Helo=[oa.msg.ericsson.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR07MB5365 Subject: [dpdk-dev] [PATCH 0/8] DSW performance and statistics improvements 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://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
DSW performance and statistics improvements
|
|
Message
Mattias Rönnblom
March 9, 2020, 6:50 a.m. UTC
Performance and statistics improvements for the distributed software (DSW) event device. Mattias Rönnblom (8): event/dsw: reduce latency in low-load situations event/dsw: reduce max flows to speed up load balancing event/dsw: extend statistics event/dsw: improve migration mechanism event/dsw: avoid migration waves in large systems event/dsw: remove redundant control ring poll event/dsw: remove unnecessary read barrier event/dsw: add port busy cycles xstats drivers/event/dsw/dsw_evdev.c | 1 + drivers/event/dsw/dsw_evdev.h | 45 ++- drivers/event/dsw/dsw_event.c | 602 ++++++++++++++++++++------------- drivers/event/dsw/dsw_xstats.c | 26 +- 4 files changed, 425 insertions(+), 249 deletions(-)
Comments
> -----Original Message----- > From: Mattias Rönnblom <mattias.ronnblom@ericsson.com> > Sent: Monday, March 9, 2020 12:21 PM > To: Jerin Jacob Kollanukkaran <jerinj@marvell.com> > Cc: dev@dpdk.org; stefan.sundkvist@ericsson.com; Ola.Liljedahl@arm.com; > Mattias Rönnblom <mattias.ronnblom@ericsson.com> > Subject: [EXT] [PATCH 0/8] DSW performance and statistics improvements > > External Email > > ---------------------------------------------------------------------- > Performance and statistics improvements for the distributed software > (DSW) event device. > > Mattias Rönnblom (8): > event/dsw: reduce latency in low-load situations > event/dsw: reduce max flows to speed up load balancing > event/dsw: extend statistics > event/dsw: improve migration mechanism > event/dsw: avoid migration waves in large systems > event/dsw: remove redundant control ring poll > event/dsw: remove unnecessary read barrier > event/dsw: add port busy cycles xstats Series applied to dpdk-next-eventdev/master. Thanks. > > drivers/event/dsw/dsw_evdev.c | 1 + > drivers/event/dsw/dsw_evdev.h | 45 ++- drivers/event/dsw/dsw_event.c | > 602 ++++++++++++++++++++------------- drivers/event/dsw/dsw_xstats.c | 26 +- > 4 files changed, 425 insertions(+), 249 deletions(-) > > -- > 2.17.1
On Sat, Apr 4, 2020 at 4:35 PM Jerin Jacob Kollanukkaran <jerinj@marvell.com> wrote: > > > -----Original Message----- > > From: Mattias Rönnblom <mattias.ronnblom@ericsson.com> > > Sent: Monday, March 9, 2020 12:21 PM > > To: Jerin Jacob Kollanukkaran <jerinj@marvell.com> > > Cc: dev@dpdk.org; stefan.sundkvist@ericsson.com; Ola.Liljedahl@arm.com; > > Mattias Rönnblom <mattias.ronnblom@ericsson.com> > > Subject: [EXT] [PATCH 0/8] DSW performance and statistics improvements > > > > External Email > > > > ---------------------------------------------------------------------- > > Performance and statistics improvements for the distributed software > > (DSW) event device. > > > > Mattias Rönnblom (8): > > event/dsw: reduce latency in low-load situations > > event/dsw: reduce max flows to speed up load balancing > > event/dsw: extend statistics > > event/dsw: improve migration mechanism > > event/dsw: avoid migration waves in large systems > > event/dsw: remove redundant control ring poll > > event/dsw: remove unnecessary read barrier > > event/dsw: add port busy cycles xstats > > Series applied to dpdk-next-eventdev/master. Thanks. I get a compilation issue on rhel7. Too bad the CI did not help. http://patchwork.dpdk.org/project/dpdk/list/?series=8828&state=* [1583/1808] Compiling C object 'drivers/drivers@@tmp_rte_pmd_dsw_event@sta/event_dsw_dsw_event.c.o'. ../drivers/event/dsw/dsw_event.c: In function ‘dsw_port_consider_emigration’: ../drivers/event/dsw/dsw_event.c:502:27: warning: ‘candidate_qf’ may be used uninitialized in this function [-Wmaybe-uninitialized] target_qfs[*targets_len] = *candidate_qf; ^ ../drivers/event/dsw/dsw_event.c:445:25: note: ‘candidate_qf’ was declared here struct dsw_queue_flow *candidate_qf; ^ In file included from ../lib/librte_eal/x86/include/rte_atomic.h:16:0, from ../lib/librte_eal/include/generic/rte_rwlock.h:25, from ../lib/librte_eal/x86/include/rte_rwlock.h:12, from ../lib/librte_eal/include/rte_fbarray.h:40, from ../lib/librte_eal/include/rte_memory.h:25, from ../lib/librte_eventdev/rte_event_ring.h:20, from ../drivers/event/dsw/dsw_evdev.h:8, from ../drivers/event/dsw/dsw_event.c:5: ../lib/librte_eal/include/generic/rte_atomic.h:566:22: warning: ‘candidate_flow_load’ may be used uninitialized in this function [-Wmaybe-uninitialized] __sync_fetch_and_add(&v->cnt, inc); ^ ../drivers/event/dsw/dsw_event.c:448:10: note: ‘candidate_flow_load’ was declared here int16_t candidate_flow_load; ^ ../drivers/event/dsw/dsw_event.c:505:49: warning: ‘candidate_port_id’ may be used uninitialized in this function [-Wmaybe-uninitialized] rte_atomic32_add(&dsw->ports[candidate_port_id].immigration_load, ^ ../drivers/event/dsw/dsw_event.c:446:10: note: ‘candidate_port_id’ was declared here uint8_t candidate_port_id; ^
On 2020-04-15 18:37, David Marchand wrote: > On Sat, Apr 4, 2020 at 4:35 PM Jerin Jacob Kollanukkaran > <jerinj@marvell.com> wrote: >>> -----Original Message----- >>> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com> >>> Sent: Monday, March 9, 2020 12:21 PM >>> To: Jerin Jacob Kollanukkaran <jerinj@marvell.com> >>> Cc: dev@dpdk.org; stefan.sundkvist@ericsson.com; Ola.Liljedahl@arm.com; >>> Mattias Rönnblom <mattias.ronnblom@ericsson.com> >>> Subject: [EXT] [PATCH 0/8] DSW performance and statistics improvements >>> >>> External Email >>> >>> ---------------------------------------------------------------------- >>> Performance and statistics improvements for the distributed software >>> (DSW) event device. >>> >>> Mattias Rönnblom (8): >>> event/dsw: reduce latency in low-load situations >>> event/dsw: reduce max flows to speed up load balancing >>> event/dsw: extend statistics >>> event/dsw: improve migration mechanism >>> event/dsw: avoid migration waves in large systems >>> event/dsw: remove redundant control ring poll >>> event/dsw: remove unnecessary read barrier >>> event/dsw: add port busy cycles xstats >> Series applied to dpdk-next-eventdev/master. Thanks. > I get a compilation issue on rhel7. > Too bad the CI did not help. > https://protect2.fireeye.com/v1/url?k=6777ccba-3ba3c0e4-67778c21-8691959ed9b7-56149d0a5dee8fea&q=1&e=d034618d-5861-42ba-adf3-fc0aafd4892a&u=http%3A%2F%2Fpatchwork.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D8828%26state%3D%2A > > > [1583/1808] Compiling C object > 'drivers/drivers@@tmp_rte_pmd_dsw_event@sta/event_dsw_dsw_event.c.o'. > ../drivers/event/dsw/dsw_event.c: In function ‘dsw_port_consider_emigration’: > ../drivers/event/dsw/dsw_event.c:502:27: warning: ‘candidate_qf’ may > be used uninitialized in this function [-Wmaybe-uninitialized] > target_qfs[*targets_len] = *candidate_qf; > ^ > ../drivers/event/dsw/dsw_event.c:445:25: note: ‘candidate_qf’ was declared here > struct dsw_queue_flow *candidate_qf; > ^ > In file included from ../lib/librte_eal/x86/include/rte_atomic.h:16:0, > from ../lib/librte_eal/include/generic/rte_rwlock.h:25, > from ../lib/librte_eal/x86/include/rte_rwlock.h:12, > from ../lib/librte_eal/include/rte_fbarray.h:40, > from ../lib/librte_eal/include/rte_memory.h:25, > from ../lib/librte_eventdev/rte_event_ring.h:20, > from ../drivers/event/dsw/dsw_evdev.h:8, > from ../drivers/event/dsw/dsw_event.c:5: > ../lib/librte_eal/include/generic/rte_atomic.h:566:22: warning: > ‘candidate_flow_load’ may be used uninitialized in this function > [-Wmaybe-uninitialized] > __sync_fetch_and_add(&v->cnt, inc); > ^ > ../drivers/event/dsw/dsw_event.c:448:10: note: ‘candidate_flow_load’ > was declared here > int16_t candidate_flow_load; > ^ > ../drivers/event/dsw/dsw_event.c:505:49: warning: ‘candidate_port_id’ > may be used uninitialized in this function [-Wmaybe-uninitialized] > rte_atomic32_add(&dsw->ports[candidate_port_id].immigration_load, > ^ > ../drivers/event/dsw/dsw_event.c:446:10: note: ‘candidate_port_id’ was > declared here > uint8_t candidate_port_id; > ^ > Looks like a false positive. What GCC version is this?
15/04/2020 19:39, Mattias Rönnblom: > On 2020-04-15 18:37, David Marchand wrote: > > On Sat, Apr 4, 2020 at 4:35 PM Jerin Jacob Kollanukkaran > > <jerinj@marvell.com> wrote: > >> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com> > >>> Performance and statistics improvements for the distributed software > >>> (DSW) event device. > >>> > >>> Mattias Rönnblom (8): > >>> event/dsw: reduce latency in low-load situations > >>> event/dsw: reduce max flows to speed up load balancing > >>> event/dsw: extend statistics > >>> event/dsw: improve migration mechanism > >>> event/dsw: avoid migration waves in large systems > >>> event/dsw: remove redundant control ring poll > >>> event/dsw: remove unnecessary read barrier > >>> event/dsw: add port busy cycles xstats > >> Series applied to dpdk-next-eventdev/master. Thanks. > > > > I get a compilation issue on rhel7. > > Too bad the CI did not help. > > https://protect2.fireeye.com/v1/url?k=6777ccba-3ba3c0e4-67778c21-8691959ed9b7-56149d0a5dee8fea&q=1&e=d034618d-5861-42ba-adf3-fc0aafd4892a&u=http%3A%2F%2Fpatchwork.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D8828%26state%3D%2A > > > > > > [1583/1808] Compiling C object > > 'drivers/drivers@@tmp_rte_pmd_dsw_event@sta/event_dsw_dsw_event.c.o'. > > ../drivers/event/dsw/dsw_event.c: In function ‘dsw_port_consider_emigration’: > > ../drivers/event/dsw/dsw_event.c:502:27: warning: ‘candidate_qf’ may > > be used uninitialized in this function [-Wmaybe-uninitialized] > > target_qfs[*targets_len] = *candidate_qf; > > ^ > > ../drivers/event/dsw/dsw_event.c:445:25: note: ‘candidate_qf’ was declared here > > struct dsw_queue_flow *candidate_qf; > > ^ > > In file included from ../lib/librte_eal/x86/include/rte_atomic.h:16:0, > > from ../lib/librte_eal/include/generic/rte_rwlock.h:25, > > from ../lib/librte_eal/x86/include/rte_rwlock.h:12, > > from ../lib/librte_eal/include/rte_fbarray.h:40, > > from ../lib/librte_eal/include/rte_memory.h:25, > > from ../lib/librte_eventdev/rte_event_ring.h:20, > > from ../drivers/event/dsw/dsw_evdev.h:8, > > from ../drivers/event/dsw/dsw_event.c:5: > > ../lib/librte_eal/include/generic/rte_atomic.h:566:22: warning: > > ‘candidate_flow_load’ may be used uninitialized in this function > > [-Wmaybe-uninitialized] > > __sync_fetch_and_add(&v->cnt, inc); > > ^ > > ../drivers/event/dsw/dsw_event.c:448:10: note: ‘candidate_flow_load’ > > was declared here > > int16_t candidate_flow_load; > > ^ > > ../drivers/event/dsw/dsw_event.c:505:49: warning: ‘candidate_port_id’ > > may be used uninitialized in this function [-Wmaybe-uninitialized] > > rte_atomic32_add(&dsw->ports[candidate_port_id].immigration_load, > > ^ > > ../drivers/event/dsw/dsw_event.c:446:10: note: ‘candidate_port_id’ was > > declared here > > uint8_t candidate_port_id; > > ^ > > > > Looks like a false positive. What GCC version is this? This is with RHEL 7. Please do you have such distro to test and fix the false positive? A quick fix would be very welcome.
On 2020-04-15 19:45, Thomas Monjalon wrote: > 15/04/2020 19:39, Mattias Rönnblom: >> On 2020-04-15 18:37, David Marchand wrote: >>> On Sat, Apr 4, 2020 at 4:35 PM Jerin Jacob Kollanukkaran >>> <jerinj@marvell.com> wrote: >>>> From: Mattias Rönnblom <mattias.ronnblom@ericsson.com> >>>>> Performance and statistics improvements for the distributed software >>>>> (DSW) event device. >>>>> >>>>> Mattias Rönnblom (8): >>>>> event/dsw: reduce latency in low-load situations >>>>> event/dsw: reduce max flows to speed up load balancing >>>>> event/dsw: extend statistics >>>>> event/dsw: improve migration mechanism >>>>> event/dsw: avoid migration waves in large systems >>>>> event/dsw: remove redundant control ring poll >>>>> event/dsw: remove unnecessary read barrier >>>>> event/dsw: add port busy cycles xstats >>>> Series applied to dpdk-next-eventdev/master. Thanks. >>> I get a compilation issue on rhel7. >>> Too bad the CI did not help. >>> https://protect2.fireeye.com/v1/url?k=6777ccba-3ba3c0e4-67778c21-8691959ed9b7-56149d0a5dee8fea&q=1&e=d034618d-5861-42ba-adf3-fc0aafd4892a&u=http%3A%2F%2Fpatchwork.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D8828%26state%3D%2A >>> >>> >>> [1583/1808] Compiling C object >>> 'drivers/drivers@@tmp_rte_pmd_dsw_event@sta/event_dsw_dsw_event.c.o'. >>> ../drivers/event/dsw/dsw_event.c: In function ‘dsw_port_consider_emigration’: >>> ../drivers/event/dsw/dsw_event.c:502:27: warning: ‘candidate_qf’ may >>> be used uninitialized in this function [-Wmaybe-uninitialized] >>> target_qfs[*targets_len] = *candidate_qf; >>> ^ >>> ../drivers/event/dsw/dsw_event.c:445:25: note: ‘candidate_qf’ was declared here >>> struct dsw_queue_flow *candidate_qf; >>> ^ >>> In file included from ../lib/librte_eal/x86/include/rte_atomic.h:16:0, >>> from ../lib/librte_eal/include/generic/rte_rwlock.h:25, >>> from ../lib/librte_eal/x86/include/rte_rwlock.h:12, >>> from ../lib/librte_eal/include/rte_fbarray.h:40, >>> from ../lib/librte_eal/include/rte_memory.h:25, >>> from ../lib/librte_eventdev/rte_event_ring.h:20, >>> from ../drivers/event/dsw/dsw_evdev.h:8, >>> from ../drivers/event/dsw/dsw_event.c:5: >>> ../lib/librte_eal/include/generic/rte_atomic.h:566:22: warning: >>> ‘candidate_flow_load’ may be used uninitialized in this function >>> [-Wmaybe-uninitialized] >>> __sync_fetch_and_add(&v->cnt, inc); >>> ^ >>> ../drivers/event/dsw/dsw_event.c:448:10: note: ‘candidate_flow_load’ >>> was declared here >>> int16_t candidate_flow_load; >>> ^ >>> ../drivers/event/dsw/dsw_event.c:505:49: warning: ‘candidate_port_id’ >>> may be used uninitialized in this function [-Wmaybe-uninitialized] >>> rte_atomic32_add(&dsw->ports[candidate_port_id].immigration_load, >>> ^ >>> ../drivers/event/dsw/dsw_event.c:446:10: note: ‘candidate_port_id’ was >>> declared here >>> uint8_t candidate_port_id; >>> ^ >>> >> Looks like a false positive. What GCC version is this? > This is with RHEL 7. > Please do you have such distro to test and fix the false positive? > A quick fix would be very welcome. > > Most distributions support several compilers. I'm assuming it's the default 4.8 compiler, and I unfortunately don't have a system with that compiler.