From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 56CFCA0569; Thu, 12 Mar 2020 09:34:09 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 392F21C010; Thu, 12 Mar 2020 09:34:08 +0100 (CET) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80040.outbound.protection.outlook.com [40.107.8.40]) by dpdk.org (Postfix) with ESMTP id 0FC511C00F for ; Thu, 12 Mar 2020 09:34:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/9NODk8un5CHXDkHrio3Ebml3mESsaTl8piu4oq+iok=; b=SgeaAP/NwyQg4gjMMElmsuJTUJVDrsQnFhQpblUxuKHWoQy307EhWKUsBxZAgWQDDbLhP4ptwb65whT7gaACw4o3UERKmWSSC3vudzT4ITfU8D+Ch8WYMlpEnrALBWza1AGkyfDTyHh2y0S85xBHmHj4o22lbcclse9GCXAsFJY= Received: from DBBPR09CA0002.eurprd09.prod.outlook.com (2603:10a6:10:c0::14) by DB8PR08MB5322.eurprd08.prod.outlook.com (2603:10a6:10:114::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.17; Thu, 12 Mar 2020 08:34:04 +0000 Received: from DB5EUR03FT021.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:c0:cafe::c7) by DBBPR09CA0002.outlook.office365.com (2603:10a6:10:c0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.20 via Frontend Transport; Thu, 12 Mar 2020 08:34:04 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT021.mail.protection.outlook.com (10.152.20.238) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2814.13 via Frontend Transport; Thu, 12 Mar 2020 08:34:04 +0000 Received: ("Tessian outbound d1ceabc7047e:v42"); Thu, 12 Mar 2020 08:34:04 +0000 X-CR-MTA-TID: 64aa7808 Received: from 8515752ffeb2.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A4B9A2E8-8F51-4B2B-B3DC-FDF90FAAD023.1; Thu, 12 Mar 2020 08:33:59 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8515752ffeb2.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 12 Mar 2020 08:33:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aJzvRFeThlKZBpGUzNNnfXcztygDECbkcpM4CsWjhOmhCrP7xteo0tPfvl/CRaSGeo509TqSF+xDRuLyckbJeUyeWtSgBNEpQ01wahDzaS8cCjuc6Eioby4XMKAXbL/+4T8CaDfHmOs7oIeb5gfCjTMKZdXBjEHhNts2pA42yppRHaKr5120FQt9ItW62yuueUr7QXdx7IT/ycr8PKi+lxiqyHidku2iX3k3s9vELJpf1HNHHfumFDZBNPSEDMsmb+e0PGpYwrhkY+065cPqtfugo9vMP/zbwWJ9wwpL4ot1mi92sHofbQaFilxFxnyoTOeKdloySuUgzWshtnT/NA== 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=/9NODk8un5CHXDkHrio3Ebml3mESsaTl8piu4oq+iok=; b=QASG4dl3RuW2Px4jHCjCVd7At4UY9kcGOnygHarBchH9pZ+msiTgkEbhJslno+ZBUTBP3Ld87kajfG4C6jWHjt1UT9alPdbeFBoW3mLVDToDqaszKxTixJI2xff4jir1j1YLO6TCcp+hINJKe0rFsZ8K/mwxLXnKt2s75wsA4aVExwMldiBCVpCal8QIoT+8MRk2p/2RsUlAwdIqOVQGZ/Fd0UoUlNGYWWXih8o1aEeh9B+aIeVlY1yi0omlf6QwBo/lFvl4OMM7NKfwWM+KXXtqetAOZt6IXz5zFyEsz2dsYb11eo67LLyB5Mn8Y0Fj9hXgDTRPeR65f5BJrtK+tQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/9NODk8un5CHXDkHrio3Ebml3mESsaTl8piu4oq+iok=; b=SgeaAP/NwyQg4gjMMElmsuJTUJVDrsQnFhQpblUxuKHWoQy307EhWKUsBxZAgWQDDbLhP4ptwb65whT7gaACw4o3UERKmWSSC3vudzT4ITfU8D+Ch8WYMlpEnrALBWza1AGkyfDTyHh2y0S85xBHmHj4o22lbcclse9GCXAsFJY= Received: from AM0PR08MB3986.eurprd08.prod.outlook.com (20.178.118.90) by AM0PR08MB3442.eurprd08.prod.outlook.com (20.177.108.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.16; Thu, 12 Mar 2020 08:33:56 +0000 Received: from AM0PR08MB3986.eurprd08.prod.outlook.com ([fe80::7cbc:dcc5:f3da:ac56]) by AM0PR08MB3986.eurprd08.prod.outlook.com ([fe80::7cbc:dcc5:f3da:ac56%7]) with mapi id 15.20.2793.013; Thu, 12 Mar 2020 08:33:56 +0000 From: Ruifeng Wang To: =?iso-8859-2?Q?Juraj_Linke=B9?= , Aaron Conole CC: "maicolgabriel@hotmail.com" , "bruce.richardson@intel.com" , "dev@dpdk.org" , "david.marchand@redhat.com" , Gavin Hu , Honnappa Nagarahalli , nd , nd , nd Thread-Topic: [PATCH v2 2/2] ci: add test suite run without hugepage Thread-Index: AQHV7e5OO31oaidk8E6Ver6GeJIdEqg4uZ+dgACSjWCAAM76jYABD5QAgACZNiqAAXUwEIAHZnMAgAASlzA= Date: Thu, 12 Mar 2020 08:33:56 +0000 Message-ID: References: <20200225073236.135581-1-ruifeng.wang@arm.com> <20200228041904.195597-1-ruifeng.wang@arm.com> <20200228041904.195597-3-ruifeng.wang@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 860c9789-3f76-4332-8776-4f3f6151308f.0 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Ruifeng.Wang@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 7fa539b9-707c-41b5-aab1-08d7c6601f82 X-MS-TrafficTypeDiagnostic: AM0PR08MB3442:|AM0PR08MB3442:|DB8PR08MB5322: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; x-forefront-prvs: 0340850FCD X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4636009)(346002)(136003)(366004)(39860400002)(376002)(396003)(199004)(45080400002)(9686003)(55236004)(5660300002)(7696005)(478600001)(55016002)(33656002)(86362001)(81166006)(2906002)(76116006)(53546011)(8676002)(186003)(71200400001)(81156014)(6506007)(54906003)(26005)(110136005)(30864003)(66556008)(66946007)(316002)(966005)(66476007)(64756008)(4326008)(66446008)(52536014)(8936002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB3442; H:AM0PR08MB3986.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: jbF1GNZi3GAauTBGyOxyk1tAObyS8XXwwcXGXufASit3HGmm5sId3CwKTeT65tPnltXNuFGrZwgUl+7zBC/8oMT4bFbylf10Jtligb6qGM+u4liOV94Q9uEDFBfCVfMbOr5UpZpyoWtkfpcFQKd7IgsSXLIvSxwwcXGVxlgT4IWDnH12W161XEujIz2sLAktKc8e0V2jLbpqsC6I8Jq+pwWlX8dHovvJLEuyEqvSUNY8FQ3b7tS3VQFOxVMC3jpXjnv9ZkE4NMJ+pMxr7q09Sh6ZWPNdFi0Xu6HyGorE7sNruCmhGvw2aHh7GgZHAOHTeuV84wjkz+J/CkECoGo/4TrMhQVfIShKS2ssDC7Gxz7A00fHB5JAh0ripDfiXXwYiYbhhrv374aqcm5M1PQ3TukpDNRwsj6KUnmotZ6zF25lPqapnjl5vP5tUb/9xeg0lJxPefWikPMkIhQawQARe+aiwP3VWNSzENlQGrzYoB/Qwn1u5KQ9rkR5vQULkVVWWMYUpkQBXfFCgMQfo5Hw/A== x-ms-exchange-antispam-messagedata: thIvkzKXxociH7Vzl54VOP0AVHIJysNWFU+dLTKQSlHIBpGaoqgxaGYUwrd0npfPgd2RpBbMJNSZyg3lJJVH2yRpEB+3wtK0cgyg9Y0mIfQZIoR/VzFMAM8MFhM6Xgdfy6/j4uzLu9J3XQini0/l4Q== Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3442 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Ruifeng.Wang@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT021.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; IPV:CAL; SCL:-1; CTRY:IE; EFV:NLI; SFV:NSPM; SFS:(10009020)(4636009)(39860400002)(396003)(346002)(376002)(136003)(199004)(70206006)(33656002)(478600001)(8676002)(52536014)(966005)(81166006)(8936002)(70586007)(81156014)(7696005)(26826003)(4326008)(45080400002)(9686003)(5660300002)(356004)(55016002)(6506007)(336012)(53546011)(316002)(110136005)(186003)(26005)(54906003)(86362001)(30864003)(2906002); DIR:OUT; SFP:1101; SCL:1; SRVR:DB8PR08MB5322; H:64aa7808-outbound-1.mta.getcheckrecipient.com; FPR:; SPF:Pass; LANG:en; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; A:1; X-MS-Office365-Filtering-Correlation-Id-Prvs: c8e35bb3-2f99-413e-9d79-08d7c6601b00 X-Forefront-PRVS: 0340850FCD X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BUfp8PI1JcAnwmb8VTotKrnMUq2qaSWeJOFbiyuWgnr0ENcrCY0vVUamwFbkoVWoyU7ycUq5+MgpcVrCRGlAgrln/LJWDnHknmGCkcjaRs7tvcy9s4yHxPpQMK6riHCwb16116eNLDP4puHa+062cl2uVm6rYu31jdDQOjBFwhC2elfJ0OAhV7sK82uWVHCevbQzIeM3k3lelUS4ax4W/1/ZMwSLiu2RwTtFZUGKY87K/DZY7tyRLdaEiW2SZ/D0GI9W7wxSKib8TnU3RwETIgmH8rfIzoomN8DxnLxjUyy82vRJBnahgaDrQSjwPFy32n1C9mwDpgYPT17GrLjIrkt4Ssj2Ki1T0W7CB73TE6Fti+NsKtDF8p96Av6WlxqlD52xSyBdsICTqTOK/G71I4auOamuTq0T/l8y0+MiQ+aMVC5vYqMa6a2j9y45BvZxN3n4V4cAQY0An8LS5vg3CX/JkS1X/tCnVXbhjjMdrQsXXrMJHfvk6T0qF6Iay9zgFy1EuW/Ycscp7F6F0KBR2w== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Mar 2020 08:34:04.3961 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7fa539b9-707c-41b5-aab1-08d7c6601f82 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5322 Subject: Re: [dpdk-dev] [PATCH v2 2/2] ci: add test suite run without hugepage X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: Juraj Linke=B9 > Sent: Thursday, March 12, 2020 15:13 > To: Ruifeng Wang ; Aaron Conole > > Cc: maicolgabriel@hotmail.com; bruce.richardson@intel.com; dev@dpdk.org; > david.marchand@redhat.com; Gavin Hu ; Honnappa > Nagarahalli ; nd ; nd > > Subject: RE: [PATCH v2 2/2] ci: add test suite run without hugepage >=20 > Hi, >=20 > What if we just split the test names into fast_hugepage_test_name and > fast_nohuge_test_names and create two suites (fast-suite and fast-nohuge- > suite) from that? That seems like a simpler version of one list with bool= eans > indicating whether a test is a huge/nohuge test, though it would require = dev > to add tests into the proper list. We could then run the full suite in x8= 6 jobs > and the nogue suite in arm jobs (and users could use either suite when th= ey > have/don't have hugepages configured). >=20 > The other option would be to detect hugepages at runtime and skip the tes= ts > in the full suite when there aren't hugepages on the system. Possibly the > best option, but where should the check be? Before testcase setup (i.e. i= f > there aren't hugepages, skip the testcase right away)? >=20 I'm on this direction. Detect hugepages at build time and generate fast_tes= ts suite with applicable cases. nr_hugepages is checked before testcase setup. Will send out patches for review soon. Thanks. /Ruifeng > Thoughts? > Thanks, > Juraj >=20 > -----Original Message----- > From: Ruifeng Wang > Sent: Saturday, March 7, 2020 3:36 PM > To: Aaron Conole > Cc: maicolgabriel@hotmail.com; bruce.richardson@intel.com; dev@dpdk.org; > david.marchand@redhat.com; Gavin Hu ; Honnappa > Nagarahalli ; Juraj Linke=B9 > ; nd ; nd > Subject: RE: [PATCH v2 2/2] ci: add test suite run without hugepage >=20 >=20 > > -----Original Message----- > > From: Aaron Conole > > Sent: Friday, March 6, 2020 23:57 > > To: Ruifeng Wang > > Cc: maicolgabriel@hotmail.com; bruce.richardson@intel.com; > > dev@dpdk.org; david.marchand@redhat.com; Gavin Hu > ; > > Honnappa Nagarahalli ; > > juraj.linkes@pantheon.tech; nd > > Subject: Re: [PATCH v2 2/2] ci: add test suite run without hugepage > > > > Ruifeng Wang writes: > > > > >> -----Original Message----- > > >> From: Aaron Conole > > >> Sent: Thursday, March 5, 2020 22:37 > > >> To: Ruifeng Wang > > >> Cc: maicolgabriel@hotmail.com; bruce.richardson@intel.com; > > >> dev@dpdk.org; david.marchand@redhat.com; Gavin Hu > > ; > > >> Honnappa Nagarahalli ; > > >> juraj.linkes@pantheon.tech; nd > > >> Subject: Re: [PATCH v2 2/2] ci: add test suite run without hugepage > > >> > > >> Ruifeng Wang writes: > > >> > > >> >> -----Original Message----- > > >> >> From: Aaron Conole > > >> >> Sent: Thursday, March 5, 2020 01:31 > > >> >> To: Ruifeng Wang > > >> >> Cc: maicolgabriel@hotmail.com; bruce.richardson@intel.com; > > >> >> dev@dpdk.org; david.marchand@redhat.com; Gavin Hu > > >> ; > > >> >> Honnappa Nagarahalli ; > > >> >> juraj.linkes@pantheon.tech; nd > > >> >> Subject: Re: [PATCH v2 2/2] ci: add test suite run without > > >> >> hugepage > > >> >> > > >> >> Ruifeng Wang writes: > > >> >> > > >> >> > This test suite is derived from fast-tests suite. Cases in > > >> >> > this suite are run with '--no-huge' flag. > > >> >> > > > >> >> > The suite aims to cover as many as possible test cases out of > > >> >> > the fast-tests suites in the environments without huge pages > > >> >> > support, like containers. > > >> >> > > > >> >> > Signed-off-by: Ruifeng Wang > > >> >> > Reviewed-by: Gavin Hu > > >> >> > --- > > >> >> > > >> >> I like this much more. Few comments. > > >> >> > > >> >> > .travis.yml | 10 +++++-- > > >> >> > app/test/meson.build | 71 > > >> >> > ++++++++++++++++++++++++++++++++++++++++++++ > > >> >> > > >> >> You should update doc/guides/prog_guide/meson_ut.rst to include > > >> >> some detail about the new tests suite. > > >> >> > > >> > Thanks. Will update document in next version. > > >> > > > >> >> > 2 files changed, 79 insertions(+), 2 deletions(-) > > >> >> > > > >> >> > diff --git a/.travis.yml b/.travis.yml index > > >> >> > b64a81bd0..eed1d96db > > >> >> > 100644 > > >> >> > --- a/.travis.yml > > >> >> > +++ b/.travis.yml > > >> >> > @@ -40,7 +40,7 @@ jobs: > > >> >> > - env: DEF_LIB=3D"static" > > >> >> > arch: amd64 > > >> >> > compiler: gcc > > >> >> > - - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 > > >> >> > + - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 TEST_SUITES=3D"fast-= tests > > >> >> nohuge-tests" > > >> >> > arch: amd64 > > >> >> > compiler: gcc > > >> >> > - env: DEF_LIB=3D"shared" BUILD_DOCS=3D1 @@ -63,7 +63,7 @@ > jobs: > > >> >> > - env: DEF_LIB=3D"static" > > >> >> > arch: amd64 > > >> >> > compiler: clang > > >> >> > - - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 > > >> >> > + - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 TEST_SUITES=3D"fast-= tests > > >> >> nohuge-tests" > > >> >> > arch: amd64 > > >> >> > compiler: clang > > >> >> > - env: DEF_LIB=3D"shared" BUILD_DOCS=3D1 @@ -101,6 +101,9 @@ > > jobs: > > >> >> > - env: DEF_LIB=3D"static" > > >> >> > arch: arm64 > > >> >> > compiler: gcc > > >> >> > + - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 TEST_SUITES=3D"nohug= e- > > tests" > > >> >> > + arch: arm64 > > >> >> > + compiler: gcc > > >> >> > - env: DEF_LIB=3D"shared" BUILD_DOCS=3D1 > > >> >> > arch: arm64 > > >> >> > compiler: gcc > > >> >> > @@ -124,3 +127,6 @@ jobs: > > >> >> > - env: DEF_LIB=3D"shared" > > >> >> > arch: arm64 > > >> >> > compiler: clang > > >> >> > + - env: DEF_LIB=3D"shared" RUN_TESTS=3D1 TEST_SUITES=3D"nohug= e- > > tests" > > >> >> > + arch: arm64 > > >> >> > + compiler: clang > > >> >> > diff --git a/app/test/meson.build b/app/test/meson.build index > > >> >> > 0a2ce710f..162a1a76f 100644 > > >> >> > --- a/app/test/meson.build > > >> >> > +++ b/app/test/meson.build > > >> >> > @@ -237,6 +237,60 @@ fast_test_names =3D [ > > >> >> > 'thash_autotest', > > >> >> > ] > > >> >> > > >> >> Shouldn't we also trim the list of fast-tests? Otherwise, these > > >> >> tests will run twice. > > >> >> > > >> > I think you mean to have exclusive lists for fast-tests and nohuge= -tests. > > >> > > >> That's what I was thinking. > > >> > > >> > Overlapped cases will run twice if both test suites are opted in. > > >> > But the two runs are not the same, one runs with hugepage and the > > >> > other runs in no-huge mode. > > >> > > >> Is it really so different between huge and no-huge? Most of the > > >> libraries won't care - they call the rte_**alloc functions, and it > > >> returns blocks of memory. Maybe I am simplifying it too much. > > >> > > >> > If fast-tests list is splited, we will need to always run > > >> > multiple suites to cover all fast tests. > > >> > We can keep x86 to run only fast-tests suite to avoid extra test > > >> > runs if they are not necessary. Thoughts? > > >> > > >> I guess since most DPDK usage will be with hugepages, we should > > >> prefer to test with it. I don't care too much about the color of > > >> this particular shed. If you want to do it that way, it's okay by > > >> me > > >> - it gives us the coverage, and doesn't duplicate tests between > > >> those > > environments. > > >> > > >> BUT it means when we add a new test to the suite, we need to > > remember > > >> to add it in two places - fast_test and nohuge_test. That almost > > >> guarantees we will miss tests (because we accidentally don't add it > > >> to nohuge). Maybe there's another way, like keep a list of all the > > >> tests and some information on whether the test needs hugepages to > > >> run. Then if there are no hugepages available, we can write that > > >> we SKIP > > the tests that don't support huge pages. > > >> In that way, we don't need two different lists - and if there are > > >> hugepages, we will run all the test cases. > > >> WDYT? > > >> > > > Yes. Agree with you that having duplicate tests in suites is error pr= one. > > > > Cool! > > > > > IIUC, cases in a suite is determined at build time, as well as > > > command > > options to run cases. > > > This implies hugepage availability needs to be detected at build > > > time if we want to run only suitable cases in suite in an > > > environment. It could be > > something we don't want. > > > > > > I'll trim fast-tests in next version to remove duplicated cases. > > > > I think it might be better to make the array something like (just a > > psuedo- code example): > > > > # psuedo-code to check for hugepages > > has_hugepages =3D check_for_hugepages() > > > > ... > > > > fast_test_names =3D [ > > ['acl_autotest', true], > > ['alarm_autotest', true], > > ['atomic_autotest', true], > > ... > > > > Then in the code: > > > > foreach arg : fast_test_names > > .... > > if not arg[1] > > test(arg[0], ...) > > if has_hugepages and arg[1] > > test(arg[0], ) > > > > Does it make sense? Do you see a problem? > > > Yes, this will keep tests in a single suite. >=20 > Actually, I thought about this approach, but had no idea on > check_for_hugepages(). > Value of "/proc/sys/vm/nr_hugepages" may be not reliable. Hugepage could > be allocated at run time after project building. > I can try hugepage allocating to detect, but it looks inelegant. > Any suggestions? >=20 > Thank you. > /Ruifeng > > > Thank you. > > > > > >> >> ex: https://travis-ci.com/ovsrobot/dpdk/jobs/292037684 > > >> >> > > >> >> > +nohuge_test_names =3D [ > > >> >> > + 'byteorder_autotest', > > >> >> > + 'cmdline_autotest', > > >> >> > + 'common_autotest', > > >> >> > + 'cpuflags_autotest', > > >> >> > + 'cycles_autotest', > > >> >> > + 'debug_autotest', > > >> >> > + 'eal_flags_n_opt_autotest', > > >> >> > + 'eal_flags_no_huge_autotest', > > >> >> > + 'eal_flags_vdev_opt_autotest', > > >> >> > + 'eal_fs_autotest', > > >> >> > + 'errno_autotest', > > >> >> > + 'event_ring_autotest', > > >> >> > + 'fib_autotest', > > >> >> > + 'fib6_autotest', > > >> >> > + 'interrupt_autotest', > > >> >> > + 'logs_autotest', > > >> >> > + 'lpm_autotest', > > >> >> > + 'lpm6_autotest', > > >> >> > + 'memcpy_autotest', > > >> >> > + 'meter_autotest', > > >> >> > + 'per_lcore_autotest', > > >> >> > + 'prefetch_autotest', > > >> >> > + 'rcu_qsbr_autotest', > > >> >> > + 'red_autotest', > > >> >> > + 'rib_autotest', > > >> >> > + 'rib6_autotest', > > >> >> > + 'ring_autotest', > > >> >> > + 'rwlock_rda_autotest', > > >> >> > + 'rwlock_rds_wrm_autotest', > > >> >> > + 'rwlock_rde_wro_autotest', > > >> >> > + 'sched_autotest', > > >> >> > + 'spinlock_autotest', > > >> >> > + 'string_autotest', > > >> >> > + 'tailq_autotest', > > >> >> > + 'user_delay_us', > > >> >> > + 'version_autotest', > > >> >> > + 'crc_autotest', > > >> >> > + 'delay_us_sleep_autotest', > > >> >> > + 'eventdev_common_autotest', > > >> >> > + 'fbarray_autotest', > > >> >> > + 'ipsec_autotest', > > >> >> > + 'kni_autotest', > > >> >> > + 'kvargs_autotest', > > >> >> > + 'member_autotest', > > >> >> > + 'metrics_autotest', > > >> >> > + 'power_cpufreq_autotest', > > >> >> > + 'power_autotest', > > >> >> > + 'power_kvm_vm_autotest', > > >> >> > + 'reorder_autotest', > > >> >> > + 'service_autotest', > > >> >> > + 'thash_autotest', > > >> >> > +] > > >> >> > + > > >> >> > perf_test_names =3D [ > > >> >> > 'ring_perf_autotest', > > >> >> > 'mempool_perf_autotest', @@ -341,6 +395,10 @@ if > > >> >> > dpdk_conf.has('RTE_LIBRTE_RING_PMD') > > >> >> > fast_test_names +=3D 'latencystats_autotest' > > >> >> > driver_test_names +=3D 'link_bonding_mode4_autotest' > > >> >> > fast_test_names +=3D 'pdump_autotest' > > >> >> > + nohuge_test_names +=3D 'ring_pmd_autotest' > > >> >> > + nohuge_test_names +=3D 'bitratestats_autotest' > > >> >> > + nohuge_test_names +=3D 'latencystats_autotest' > > >> >> > + nohuge_test_names +=3D 'pdump_autotest' > > >> >> > endif > > >> >> > > > >> >> > if dpdk_conf.has('RTE_LIBRTE_POWER') @@ -430,6 +488,19 @@ > > >> foreach > > >> >> > arg : fast_test_names > > >> >> > endif > > >> >> > endforeach > > >> >> > > > >> >> > +foreach arg : nohuge_test_names > > >> >> > + if host_machine.system() =3D=3D 'linux' > > >> >> > + test(arg, dpdk_test, > > >> >> > + env : ['DPDK_TEST=3D' + arg], > > >> >> > + args : test_args + > > >> >> > + ['--no-huge'] + ['-m 1024'] + > > >> >> > + ['--file-prefix=3D@0@'.format(arg)], > > >> >> > + timeout : timeout_seconds_fast, > > >> >> > + is_parallel : false, > > >> >> > + suite : 'nohuge-tests') > > >> >> > + endif > > >> >> > +endforeach > > >> >> > + > > >> >> > foreach arg : perf_test_names > > >> >> > test(arg, dpdk_test, > > >> >> > env : ['DPDK_TEST=3D' + arg],