From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0044.outbound.protection.outlook.com [104.47.40.44]) by dpdk.org (Postfix) with ESMTP id 311EC5596 for ; Mon, 10 Apr 2017 19:09:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=ddMOgAuALgQvB3PQuz0imzAaWnweNOtO8ZRwABuNseo=; b=SLXigOrbvSMHaWKHH2H0yxiL9VNODkxCnvbxFFWVmg1OhpsQrJRbTbXiKgdv136aunWJvGVlYGLIQCfIcqVI+79BAfmL2XDpmi89lBs9QXnXNqsZkoAxshcUa5jqbsE8z0XDjxUHmRncVe29DzNral8e24qYbNgv884hlLdPhz0= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from angela-H81M-S1.semihalf.local (31.172.191.173) by DM2PR0701MB812.namprd07.prod.outlook.com (10.242.127.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1019.17; Mon, 10 Apr 2017 17:09:43 +0000 From: Angela Czubak To: dts@dpdk.org Cc: Angela Czubak Date: Mon, 10 Apr 2017 19:09:02 +0200 Message-Id: <1491844162-16300-9-git-send-email-aczubak@caviumnetworks.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1491844162-16300-1-git-send-email-aczubak@caviumnetworks.com> References: <1491501092-14278-1-git-send-email-aczubak@caviumnetworks.com> <1491844162-16300-1-git-send-email-aczubak@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [31.172.191.173] X-ClientProxiedBy: DB6PR05CA0010.eurprd05.prod.outlook.com (10.170.218.23) To DM2PR0701MB812.namprd07.prod.outlook.com (10.242.127.26) X-MS-Office365-Filtering-Correlation-Id: 83ecccad-71e5-4a66-f0be-08d48034622a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:DM2PR0701MB812; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB812; 3:3N1jYn+X8xfVnOWOWCphDOK96GP1mR+EIPS43AjmaP1kwPf27cS//g9HKhEWemFRrBEKucpIugK0GK6p1xaQgTFGxAhPW3D9IcpRkcYfy1+Wbga5szv05gYSLtxOkphBKz7uQ64dsixVwAXOTEZ+qovud1uNN+Jooq5xHBI/k3YSNt/uzCLUPzC4RlhsfJ/apOZY716gMoaWMEF5umRsc/vr75ImsgccUp3xzUHRR2oC1pbk2AXTLKI3kdqRZ/+2xy+p/OtdTBwJ34aZLqYAZiYqgEcMpykazNoEhVm3iNQUs/mtxJ2bir36eW+kd65yKGkcY5a7IT1EL2DlsjrcsA==; 25:rSGxE39q/baRtwaPCGbLs2sbnqvTnLW5G8fBlCLNoF2TMCkTcF8AaNT1LmgdpKNsWGOUVtoLZmhIv4AOwz2MpjKlK/2FTygty2/osqmj93CcLx8LD7BzKgZ2ySzUfpae0JI+CDK0J07aH9Dk9J2XN7nk7CRE60/sOaw4MQt/cwULMHzJ15K/aLzYsmQars7bzBqO8iH4N2xMBQMBY6cMuODjub/KfffB4BqfImGuvSM4iolEM8nCZtbCWkSXGSz9oLmeg+rmuesgLJiT3y9+SSWnaSJB6OChh7RGwgouQZxoby9iLkwS7+zvhFXyeU/LFHb/TZAW/YkqbcAob0YcLvbTIAF5K+yTWYIibSEB/orkmONqk4XUZGwwcHZeXbVu9NN51Jfd9Ez8SuU73f9HTXfzsOi2bVZZf9uQKUDPISely52oGnlndk1HzGuHYaGXVkAmP7UGTCLJOKGhSh/TBQ== X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB812; 31:LiMqRoT+uOvJ49kKLTUJbcV9LPF+Zzpj+6GjWcgQvMO++ZF8W7KWvb41aZjpqDGTXMFAfjsKGH8oeFBz/+7t34il+85jghauk5Tk2rrrFzlJObOwPp5OyUlWd1GORhWNllb865mLnj7Tw7QPdIFkXjfGpZ4a4kdRidmLc+F0ObgMlGBW2JLn412Ha/1shcS4MhwCSEa/6J7liQNdet4fCHAY781NTyevUIrqxOm3b7Fkz6cz2JtDqgoae8rixS07; 20:S/HN7cj8hFrirOewfvZt8CsOheI0fWfFafNluZyRjCcdWeEo8jCLEyiMXBrvGi2g6vzPDKkoOSlgIDGDAvdswKRxHPt+ydNY4lLHdoVS3LyVbq3rilKooN1XPLtR/IzkwL+MiZriG4qfEiIKiHDBVv2URcDYh34DxqNTC/FvfijI4CymVM/z783CJMPtt13u/6tHqwz2mSkCfEjUkiDPo9zZVtUPS1sKOkMm0ZJgMoZMOtYSBogb9mAfsfUs3zjYuh2k7Uoo/CW4m2X/FqDd3qbT/4mK+lNsHTCtn7S2THrPPTieqPG12glJ1mbDfYKi274aefCvK08xc0yo9WappBIBoMeU2DS26hBVUqpzqS8Ev9wGojbe/nG1W+QWLHX6+sxR88+/Asy7VzSX27PsS5ynzyTxCe256J4RxwtN6trLr9jB7ZwvbNhwkduyihqIaLuuMhTY6ZRfTzkz+s7njfxTqVaCC/Fq0nO1wX2JlaM0RDI+1VQIYFSaQXTUktkHjUtvo93USCeFJukMXY5479NcOCGSi7nxPunbIHCs0U+XFtqFVJVq9T0l5gVR6EEn5ThAUDGjL9BmAyAy1ThpC43kYNm0zYmEHJKnmiiMPCU= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(127540120423786); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(10201501046)(6041248)(201703131423075)(201702281528075)(201703061421075)(20161123564025)(20161123560025)(20161123555025)(20161123562025)(6072148); SRVR:DM2PR0701MB812; BCL:0; PCL:0; RULEID:; SRVR:DM2PR0701MB812; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB812; 4:eidSyDmHc6FhAcALQhGIDQPBV461ndSOuhVUKdJF9gnkwnvQIaEQkQO9m5bXS8MtcbHyJMrGgRA6J04FoCMZICkbmdho2Hxwc83c2j6Zb5xAsSDpj5HMRHXM8ltlWjdT5fJxa4QeC2ixt+qx/MIh894ySdymUf/++HPov2ZL1MgfmF4abwdL8I80tKQi13jnnNJfdZhfG8i2GivORBO2t0IFCNQK9BTdQN83q+1rVpZBQVQyGFdEAkAENXU431lFdPcRVXBo3fkkj7sv4Pe2TzDaNdn/RZJaJ5Et+l2z0vd7VIdA3k0pdKPXkgYLu2faC896oA2HPT+gKF6d//seWbdpSbZLznpthUvvQ71psSllQ6cGUT3VBh1a29o+g8dx0ZD+/eAieRJQDCL6KAAKYGVpnNye7ArNuDXUo+EUix3JQV98k88i5CUwkUL3q8aGL31seITjPFoeBc3ysWowI3cGeDMWcpezIYASiuN/BV2eqckOYNmza7qFWYX8uBicFPfVAD8OcAHk7aNeHcvTGRKylxb6ttwpUQBovSzKGfEsDyN7EYvkn/LbG/l5G3A2/N5BcTU/5QDjkbDZ0W/UwvUsCRpw68qtEjNJgzbCF/iK25Plt1VOApATkAuxmw5tL92DzP5hM8EKhDz7ZLIpgNxb1HUgbnDH7UrZKjP9fW2IJfAuqD3WCr9TD8QXlyGszsE1nxEjAa4TnWZe7xK0vTTNL+tuz2xi+TdmLvxPHe5K/fT2G7cEt2w5y9HCPenF X-Forefront-PRVS: 027367F73D X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39850400002)(39840400002)(39410400002)(39450400003)(39400400002)(8676002)(81166006)(2950100002)(305945005)(6512007)(7736002)(42882006)(6916009)(50226002)(48376002)(47776003)(6506006)(2906002)(53936002)(66066001)(6666003)(189998001)(6116002)(110136004)(33646002)(36756003)(38730400002)(107886003)(2361001)(5003940100001)(4326008)(3846002)(2351001)(5660300001)(6486002)(50466002)(50986999)(76176999)(42186005)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR0701MB812; H:angela-H81M-S1.semihalf.local; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM2PR0701MB812; 23:uZTtjQ1/rN6HvkCDXbtcMacM0kUHDowh26UaYvfT?= =?us-ascii?Q?03FtdmhL2VtpPAzQo7oGsMhBZ6cwPD90benEGWGIqEglPW4Z2MdEDi8jR/Iw?= =?us-ascii?Q?OddXDusSeb46Fpz8hCveS4EuXHSlWBzbVconUI4B3lVhmx9Vsl1wJqTrBk44?= =?us-ascii?Q?nsjbUEToJeueqpGa6uWJtfKN8eRsZ4kBveT3PkdRPo6YWgy78XoWNQyzFBDn?= =?us-ascii?Q?KjhNf25faOGTv6Nfvw3UViQpAuNV3y1w8qWCD7IazsdQ5CYkTsiCnrOl0l34?= =?us-ascii?Q?f/8GZZJfGunVsh1MAPpbRHafwrQ8IwdaJN3RskuWy7rYV3ySw4quLKQPm6el?= =?us-ascii?Q?AeMH7yxR6XysxD5qdr489G5uuWxmS10Mu2wb2xn78VVj9CeGMZ6lS7QyVX6j?= =?us-ascii?Q?Zm5saIDcvFsB9/yCYfQcCcOkzGnZuCCK8Y9Sj7AXZ66Tuh6J94zgE1IYleaG?= =?us-ascii?Q?wMkumqSAUxFACgIlvA3qa7RY6SuEy9shesThkwymVUW5+RH+oq4bYMDn2LvS?= =?us-ascii?Q?e2zr4E8Nhz+e5S1lA/C3yPoOKXEjRESGJVtZCoxl0UN6lxp8gnZReZXYGN43?= =?us-ascii?Q?QMA5yj/i+xDNKv4GnF32nyFcy0lTGQnBefXIjsl6ahv9w9jlNpwPcR2oeSax?= =?us-ascii?Q?D41vQLk/Rk6HYqCdHbgLyIP9e475x5144K5GZYyayKa+oO681QS6JELRhLhS?= =?us-ascii?Q?bHeVND7btCm1xtEQ1fNvNC5BM0yEswJJJbMFDPsjVJAkMOZ9zg+n1SPbF3t/?= =?us-ascii?Q?yOvNfCgSO28JlEI03I1yvPhN281HY/UStToDd71YrnXcGKtxOouFxgVHBAim?= =?us-ascii?Q?QMKA+odtXP4wNilbbvvVQuVQ2QvvJoyhxlfNKOzdDdJe2SkLN1CJWKtXaJOq?= =?us-ascii?Q?A1omqf6zjKFKhsyLG8mZyx6srG7PeP0XmVu4l5nWhzLiNyUcW9cQHJRFJhsX?= =?us-ascii?Q?wqSuB2VACFqXsgCfsQK+20UrWPeMk7KveNcrt+LO8BUbj3vCtKVTFyEQd8Lt?= =?us-ascii?Q?sC5wew4Cpnp6dkfTZfxn/upBE8HqtxHNOVyddhPUXXcVggWcSkTBjxBzBgF4?= =?us-ascii?Q?Q9NOQFE=3D?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB812; 6:hcstoIg463mJgJqOScev+6IpWHU/y5aVltB8IzltOucQuORV85spWUKg/yY35cS80xgyir1BqzVw/1jX19infJSQq4U9MSeWg5gg4frtefx++tYP0cKoEFK6MIPrKnqIME6KMLVMZLGod9znISwRrJgfbstk+s29x86G+EL1tB3Wpo31ImgIeywWp3Kgg1p9hkPeqmRq/W6oABo7yEicMykeQLcAQ5hvn73J5ZXwfLgA7gGLiRCi6MwVBWI4i2t2xMrd/Jf1wmWGSUlPUap3s0mD3LDCqDbc7IoZj9lvYTjdMTplWz9hKzP3TjFxCJKB22k6KFozh4qBgGquQuphkIsAZa2boZfe38SXjRnIf7q7CZ2U0xgRbWFPrRrrE1DE4b8ct+frAaCFbUV+El1m5J/u4qTzQRf9RlnTfFry5/JiuH0FWmj8YOu53fsxxJZlY71p4pbFE5ApRQ0srGMYkQ==; 5:Hg5lm1PNFeucknlISRuTS8upEYC0qcYcuhQy56wCzrZYAderl/V/CJYITR0tEFwJThWhFq9e7gyTQC90SAfeigJoBGEwyDFuibskmrvBH6rzxtj+ZNSkXAu6qZPSveX+5Ml5KhNDuTkgG+VYe0xUMw==; 24:xXVIS76UdUrs39uFWuYSFqgcdERSlWy0l9AymgfpG2skJJvnL/Rkp7GDLAzh0nF0fA+BAZiz9ClV4eRWqZYbmZM+uXPhSgvEZk5Hg2getig= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB812; 7:GJBvtrmlRxIfSLZ9M5I2/UO+VDhr6IYIplA9f0SCtuvKx2Yca+czCYIFc1s4rmzxZypCFmlql5xrmi9/4jcoE0vufwMC+pEiTVD9BOSuWiu+RLJ8plLNDA2Ah4pL2p+s6fK3sRhifidF0C5kRFWfWILlZUFKmq5kK6Wjd2uTefOPKk5ZeHRlrDxmYeMpkzsM53owyyl9yFYGMN0oUw4vOxi/1WaMpOfLCq8jpwouMHnQX5d1gIrAORiNZ9LP1EcZ/sYeg2iyLmX4a/1kFezxxVr+zLhHiRkfxuWewbsgUKhXuzGb8idF3u0k2mkvWweBlTx1iF0LUJB35S+lzfv9GQ== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Apr 2017 17:09:43.3624 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0701MB812 Subject: [dts] [PATCH v2 08/28] framework: getting DPDK binding script moved to a method in dut 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: Mon, 10 Apr 2017 17:09:45 -0000 Since DPDK binding script is used in a few places and the right one should be chosen the code doing it has been moved to get_dpdk_bind_script method Signed-off-by: Angela Czubak --- framework/dut.py | 34 ++++++++++++++++------------------ framework/project_dpdk.py | 33 ++++++--------------------------- 2 files changed, 22 insertions(+), 45 deletions(-) diff --git a/framework/dut.py b/framework/dut.py index cd899c8..3e90670 100644 --- a/framework/dut.py +++ b/framework/dut.py @@ -359,6 +359,18 @@ class Dut(Crb): else: return False + def get_dpdk_bind_script(self): + op = self.send_command("ls") + if "usertools" in op: + res = 'usertools/dpdk-devbind.py' + else: + op = self.send_command("ls tools") + if "dpdk_nic_bind.py" in op: + res = 'tools/dpdk_nic_bind.py' + else: + res = 'tools/dpdk-devbind.py' + return res + def bind_interfaces_linux(self, driver='igb_uio', nics_to_bind=None): """ Bind the interfaces to the selected driver. nics_to_bind can be None @@ -380,15 +392,8 @@ class Dut(Crb): if current_nic == 0: self.logger.info("Not nic need bind driver: %s" % driver) return - op = self.send_command("ls") - if "usertools" in op: - self.send_expect('usertools/dpdk-devbind.py --force %s' % binding_list, '# ') - else: - op = self.send_command("ls tools") - if "dpdk_nic_bind.py" in op: - self.send_expect('tools/dpdk_nic_bind.py %s' % binding_list, '# ') - else: - self.send_expect('tools/dpdk-devbind.py %s' % binding_list, '# ') + bind_script_path = self.get_dpdk_bind_script() + self.send_expect('%s --force %s' % (bind_script_path, binding_list), '# ') def unbind_interfaces_linux(self, nics_to_bind=None): """ @@ -412,15 +417,8 @@ class Dut(Crb): self.logger.info("Not nic need unbind driver") return - op = self.send_command("ls") - if "usertools" in op: - self.send_expect('usertools/dpdk-devbind.py %s' % binding_list, '# ') - else: - op = self.send_command("ls tools") - if "dpdk_nic_bind.py" in op: - self.send_expect('tools/dpdk_nic_bind.py %s' % binding_list, '# ') - else: - self.send_expect('tools/dpdk-devbind.py %s' % binding_list, '# ') + bind_script_path = self.get_dpdk_bind_script() + self.send_expect('%s --force %s' % (bind_script_path, binding_list), '# ') def get_ports(self, nic_type='any', perf=None, socket=None): """ diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py index 2a50e87..c4a00bc 100644 --- a/framework/project_dpdk.py +++ b/framework/project_dpdk.py @@ -103,15 +103,8 @@ class DPDKdut(Dut): self.send_expect("modprobe vfio", "#", 70) self.send_expect("modprobe vfio-pci", "#", 70) # check with dpdk binding script instead of lsmod - kernel may have builtin modules - op = self.send_command("ls") - if "usertools" in op: - out = self.send_expect('usertools/dpdk-devbind.py --status', '# ') - else: - op = self.send_command("ls tools") - if "dpdk_nic_bind.py" in op: - out = self.send_expect('tools/dpdk_nic_bind.py --status', '# ') - else: - out = self.send_expect('tools/dpdk-devbind.py --status', '# ') + bind_script_path = self.get_dpdk_bind_script() + out = self.send_expect('%s --status' % bind_script_path, '# ') assert ("vfio-pci" in out), "Failed to setup vfio-pci" else: self.send_expect("modprobe uio", "#", 70) @@ -323,15 +316,8 @@ class DPDKdut(Dut): binding_list += '%s ' % (port_info['pci']) current_nic += 1 - op = self.send_command("ls") - if "usertools" in op: - self.send_expect('usertools/dpdk-devbind.py --force %s' % binding_list, '# ') - else: - op = self.send_command("ls tools") - if "dpdk_nic_bind.py" in op: - self.send_expect('tools/dpdk_nic_bind.py %s' % binding_list, '# ') - else: - self.send_expect('tools/dpdk-devbind.py %s' % binding_list, '# ') + bind_script_path = self.get_dpdk_bind_script() + self.send_expect('%s --force %s' % (bind_script_path, binding_list), '# ') def unbind_interfaces_linux(self, nics_to_bind=None): """ @@ -346,15 +332,8 @@ class DPDKdut(Dut): binding_list += '%s ' % (port_info['pci']) current_nic += 1 - op = self.send_command("ls") - if "usertools" in op: - self.send_expect('usertools/dpdk-devbind.py %s' % binding_list, '# ') - else: - op = self.send_command("ls tools") - if "dpdk_nic_bind.py" in op: - self.send_expect('tools/dpdk_nic_bind.py %s' % binding_list, '# ') - else: - self.send_expect('tools/dpdk-devbind.py %s' % binding_list, '# ') + bind_script_path = self.get_dpdk_bind_script() + self.send_expect('%s --force %s' % (bind_script_path, binding_list), '# ') def build_dpdk_apps(self, folder, extra_options=''): """ -- 2.7.4