From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 01EF92B91 for ; Sat, 1 Apr 2017 10:54:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1491036867; x=1522572867; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=RwFael4QC6yHXB2jFqiAAXoQHTsrv2cBzABcPYyk0rI=; b=HzONq3+KdfYatZmjDvE0OfHbE13SO9b9JTO5NfxpkpZV4SgDwlv1NbJo /0GBWDRwQHLMUjwtoSd+q5gpGPfBLA==; Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Apr 2017 01:54:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,256,1486454400"; d="scan'208";a="83027584" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga005.fm.intel.com with ESMTP; 01 Apr 2017 01:54:25 -0700 Received: from fmsmsx151.amr.corp.intel.com (10.18.125.4) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Sat, 1 Apr 2017 01:54:25 -0700 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by FMSMSX151.amr.corp.intel.com (10.18.125.4) with Microsoft SMTP Server (TLS) id 14.3.319.2; Sat, 1 Apr 2017 01:54:24 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.253]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.224]) with mapi id 14.03.0248.002; Sat, 1 Apr 2017 16:54:22 +0800 From: "Liu, Yong" To: "Xu, HuilongX" , "dts@dpdk.org" Thread-Topic: [dts] [PATCH 0/4] compile dpdk different config with different test suite by dts framework befor run test suite Thread-Index: AQHSqrtcrabPcfswkUisBbFQMZk9FaGwKepw//9/V4CAAIfCwA== Date: Sat, 1 Apr 2017 08:54:22 +0000 Message-ID: <86228AFD5BCD8E4EBFD2B90117B5E81E62DA36B2@SHSMSX103.ccr.corp.intel.com> References: <1491032552-118473-1-git-send-email-huilongx.xu@intel.com> <86228AFD5BCD8E4EBFD2B90117B5E81E62DA35F7@SHSMSX103.ccr.corp.intel.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH 0/4] compile dpdk different config with different test suite by dts framework befor run test suite X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Apr 2017 08:54:27 -0000 Huilong, thanks for your comments. > -----Original Message----- > From: Xu, HuilongX > Sent: Saturday, April 01, 2017 4:32 PM > To: Liu, Yong ; dts@dpdk.org > Subject: RE: [dts] [PATCH 0/4] compile dpdk different config with > different test suite by dts framework befor run test suite >=20 >=20 > See my comments >=20 > > -----Original Message----- > > From: Liu, Yong > > Sent: Saturday, April 01, 2017 4:21 PM > > To: Xu, HuilongX; dts@dpdk.org > > Cc: Xu, HuilongX > > Subject: RE: [dts] [PATCH 0/4] compile dpdk different config with > different > > test suite by dts framework befor run test suite > > > > Thanks huilong. The overall idea look good for me. Just some comments a= s > > below: > > > > 1. Configuration dependency should be based on test case not suite. > > Configuration requirements maybe changed even in one suite. > If config dependency test case, must get all case name, but if case name > same, maybe have issue. That can be solved like reformat cases names to make sure name different fr= om each other. Or compile configuration format changed to "suite+case". >=20 > > 2. No need to compile all compile sessions. If cases not in execution > list, we > > can skip it. It will save more time :) > The config is global, if test suite not in exection.cfg, the compile > session will skip. Thanks, we need to skip useless build. >=20 > 3. Assume that suite can remove all dpdk > > build related code, cause of framework can make case not aware of > > configuration dependencies. > Maybe can savel compile switch in target result, but it only for check. > Because, when we development a case. > We should know compile switch config and compile.cfg is static and global= . > So not need know dependencies. > > Configuration dependencies have been tracked by compile.cfg. Compilation an= d link action can be handled in framework. Test case code can ignore or discard DPDK configuration difference. Logic will be like: Compile config: tracking all configuration dependencies DTS init: Load compile config Load execution config Build dpdk with default configuration If execution cases need in compile configuration Build dpdk with modified configuration file Build app with modified configuration file Move built target to other folder Move built binary to other folder DTS run test Case:=20 If case need special configuration=20 Link compile session target for this case to default target Link app for this case to default folder Run test case After case finished, remove that link and restore default target back If case not need special configuration Just run the case(original dpdk recompile code should also work here) > > Thanks, > > Marvin > > > > > -----Original Message----- > > > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xu,huilong > > > Sent: Saturday, April 01, 2017 3:42 PM > > > To: dts@dpdk.org > > > Cc: Xu, HuilongX > > > Subject: [dts] [PATCH 0/4] compile dpdk different config with > > > different test suite by dts framework befor run test suite > > > > > > we should compile dpdk many times for different test suite. > > > if we exec a test suite must update dpdk compile suite or change dpdk > > > code, we must cpmpile dpdk two times at least. > > > So this change for read exec test_suite list and compile dpdk befor > > > run test suite. > > > > > > update list: > > > 1. conf/common_base > > > this is dpdk all compile switch from dpdk source code. it for > > > check compile.cfg switch vaild. > > > 2. conf/compile.cfg > > > compile config template, detaile config please see comments in > > > file 3. framework/config.py > > > parse compile.cfg, detaile info please see comments in commit 4. > > > framework/project_dpdk.py > > > a)define interface for test suit: > > > reset_compile_target() > > > b) read compile conf and get test suite list, then update compile > > > switch and compile dpdk 5. framework/dts.py > > > set test suite list > > > 6. tests/TestSuite_coremask.py and > tests/TestSuite_queue_start_stop.py > > > example for use compile config. > > > Now old interface for compile dpdk is vaild, so other case will also > > > run pass. > > > > > > xu,huilong (4): > > > add dpdk all compile switch > > > add compile config file template and parse compile config class > > > read compile switch config and compile dpdk before test > > > add example for test suite > > > > > > conf/common_base | 632 > > > ++++++++++++++++++++++++++++++++++++ > > > conf/compile.cfg | 30 ++ > > > framework/config.py | 21 +- > > > framework/dts.py | 2 +- > > > framework/project_dpdk.py | 103 +++++- > > > tests/TestSuite_coremask.py | 12 +- > > > tests/TestSuite_queue_start_stop.py | 28 +- > > > 7 files changed, 789 insertions(+), 39 deletions(-) create mode > > > 100644 conf/common_base create mode 100644 conf/compile.cfg > > > > > > -- > > > 1.9.3