From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0041.outbound.protection.outlook.com [104.47.34.41]) by dpdk.org (Postfix) with ESMTP id 932183772 for ; Thu, 6 Apr 2017 19:51:54 +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=S4eAaIGxOb54dgSroxGLtxyAM+OuN8R7DU58H/NTeJ7SDwaITHm4nMZcpahwx3ERtTXhQUhdaezh5sjUh+uFISHHWutT0fEbEOE5TqnRR7eVc36Eug1Z6Xwp1kspyRwil3aAi4NaRvV4xgVYixourfeBMe5GFbVESwLlYrD7k0k= 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 DM2PR0701MB810.namprd07.prod.outlook.com (10.242.127.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1005.10; Thu, 6 Apr 2017 17:51:53 +0000 From: Angela Czubak To: dts@dpdk.org Cc: Angela Czubak Date: Thu, 6 Apr 2017 19:51:14 +0200 Message-Id: <1491501092-14278-9-git-send-email-aczubak@caviumnetworks.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1491501092-14278-1-git-send-email-aczubak@caviumnetworks.com> References: <1491501092-14278-1-git-send-email-aczubak@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [31.172.191.173] X-ClientProxiedBy: AM5PR0701CA0051.eurprd07.prod.outlook.com (10.169.145.141) To DM2PR0701MB810.namprd07.prod.outlook.com (10.242.127.24) X-MS-Office365-Filtering-Correlation-Id: b3d2df10-211c-466c-44d5-08d47d159c60 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:DM2PR0701MB810; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB810; 3:rnwYPBPpOpq1+meyBcR9MPWIzNwfleZFkv4fgaYlEVJV+1YOAuT00Z4eKXbxHVqGTqbi8IQzhwT1IflYu15ReHKS8RirPdzZTkqANLbbYL2MN1UCIaSBh0CtcCS313EqvvFqUzoJIL5kS/9PFBlqKhJmqZkuY4RDZ8RlvFwOTgjv+h+qT+oxH1qQkEznxFOUoPOwwPU0IKayybe1W8yDcZXsJPKsyUGX4XI1HoF5FMxZ4yFf5np+PR0wTv55LXWajo/Kr6sA1tWTZ7N0zXxNTgk9CTEsulFoaASi4mM3J8Ml+XwX5iVl5Qr4UMsBrgX6+TRC7ycIIHMT55HlQsjpSw==; 25:rdeCdH5weWyRMB9DAWl2b/K5cs6rgdBDpt8/6zXzdkC+Qke+ZbV6gVZktyUXJnCnVsDmlQIj1ky9eIpI3N9gfFeWKqs9I7BAo26ES67A66mpQCSFwt7mAA1cmayELrfqSPbDcKxUg9hXfBoFRgU4TXCcfdZdCdVXfSr/FJ49GtjSXBefqhMYNOjOlrCUgaQI7Q1FxnlMsQ0ZqP/1LufTi3bwsDQ+x3LY+lE2muioA5oTHCQEDJIXXzAEVryTn2/uOAZCIu5OqhgbZksIlngqeU4/xPCj5LuPLvl4D+8bHH6RfUSCSgfK6c2Z2qU4qgscZetOKc9u3AnV24kG4hXKmgzSb6SG5hSOLBwBZPMG+faFmNXIdemWnK2KVBX5h8Gg1WT3oOFPuOhnsZwrLLOyrXZgXkgD97FEolgWOzD1lICuzc7EIvYuww0UhQqcWORwjwIWXhyx8/8oCxKLs8pyqw== X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB810; 31:TVz9Y83fJxCA4pkmJZ5375BcDoYuz2tWxo+4oa92CF6+WmWB9He+uvGFbBLDCIwPnFgyPUAqOpNx7ONLkCA4FQuraXdNfojJkCrx3Oqo4xvrBeq/xXUowo0igkhKGoiZrCI7cFaBbwWkK6xBpanxQcJO0M9YH3naesULpdbsZ10tt0CrYGGg9DZtRevPjNDRvUGa7EqGWnntjVA0TIsgHjiUlzxOUWQk5zGi1j8HVAg=; 20:PeX1iyZBsLb07tpbHXDoSv9Fa26jGpHng1msv9kujfMSnP0TwObUwZX4/OHZns1ux3YKEbJAtznIFLn38YKoM7apG0cl7gE0zPXyPg4y7N8bX8o+a4z68zfPG2Gro7RR6Cbw2aU7BOFa7WcEsdA/OgMVaSqBfsMtZb9FO0rAwnRcgKfpMu0Tw+NIpmfJ7DwGus4qI9N4o6FHN35fZ3ZlDghsMXSUrkbRZhs/HkLr0EH8mgN2nViVBLC7bQ2VCfvMpyKvkCclLby6zE6HMf7XSdDPKFj2VH9wAZBpvL/m7uegM64Xas5wV3fX1iZgRMxuxIh913PMBvoTY+xEsCVZzUMsbqoBc91nWgPrdmjtE7i0LfTbs4/THR2Ej6cctH6/gO6X2UZ1I68rwYGc8aqTnsGFWGNGJR2VHQCYCs/68zRaUhE4nb9Q3cvduDWLieZZHehMTi50NEDRx4Sf9q8Ja+I3REzj7IdW4IMSj/57S2DaD5WDppdohpHr7oosFQ1+znu9nX9wcNFY0R2cmtSyWQ5by2mh682CKwvQ0mKnfDcpXPMCywp7EmPyapZpH+KlTXeCu6yFzWaOqcnq2/BgAMseKLCJwdYJdVJGZGM7hYU= 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)(8121501046)(5005006)(93006095)(10201501046)(3002001)(6041248)(20161123555025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(20161123562025)(6072148); SRVR:DM2PR0701MB810; BCL:0; PCL:0; RULEID:; SRVR:DM2PR0701MB810; X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB810; 4:88FMAK5A+1wsGUs3I+hCdAqmmNaYrEjeAVbdpPCDzFY/BiNHfTqEeA/B8MRk44FUD9JPjbYsoMrE01r6qWB7FZv8pFAaj0pSxpnbA4ONu0Ij02xVTr2YFoBptJNF2Zbwzv3c7QnWU4rKOYouFJ7nOY1i981/Ssw5u4/sgGmiF2pB7ACnfcPQpDZf/k1KoDeyNzJl9sNG0i7+Y1qdU8XrABBl+9340Cl0/Bz/+jWk6+QpDdUbfOZXDvypYZ/vpWxZWrLSftS3C+1JiBL2aEElwz951hSh2m3bm3ekqTrGOVATNmNQGiar8240AbSEGpmGeh+5oVAb7RolRf9PCtucy62cO5utMwtdfF74i0h3tgMVopE9prQXRZF7dZqEUrfO5v2ojqm8bmHlfJkWpmQ153mtE0mfEwCKiA+XY/HTiTIIVZA1x7hMqhkU7yVHkW7+kii+T01Ix3r41Dxlvq97TAHks42zwQlrBWqG3Jut6yKAaCy4hXJ6a2LJCrxSAS8Tf2bZGRR6Fc2fUXWxXm58XcXE/mVBmh7sotIEmFVBi89WMKOP+lKfLbX0H9Z0UaYyeuKhV62I2MbFp+2VYUtY9K9obG1Z68L4YmrcEIu+eVtFnLXxePxS2sCY5lcSD511A2ph0cmB+HrrkFYNunL9QbxHmp93oT4Yj+qcn0tsQvpgScmHz5Na9id2KlfQQyiv8w/ZqG5eKxOZBTjkGV7OPxETmOZHNLsxuTA9IOagIeUZqGEqmoMqtWCXDLawRTF3 X-Forefront-PRVS: 02698DF457 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39830400002)(39450400003)(39400400002)(39410400002)(3846002)(50226002)(6116002)(47776003)(33646002)(6506006)(189998001)(6486002)(48376002)(50466002)(36756003)(66066001)(8676002)(5003940100001)(2361001)(42882006)(110136004)(107886003)(38730400002)(76176999)(25786009)(2351001)(6666003)(81166006)(42186005)(50986999)(6916009)(6512007)(7736002)(53936002)(4326008)(5660300001)(305945005)(2950100002)(2906002); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR0701MB810; H:angela-H81M-S1.semihalf.local; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM2PR0701MB810; 23:qwE814NAlv7rx8Y4QNTOTPGP8JxCYuIsN02ZIscF?= =?us-ascii?Q?rBMxjXB7ojaLiBdTVHommdpLZZtjgmt7ZObMOD47k3MVaAFZMVpg7RiAU8mP?= =?us-ascii?Q?GzH/0x1WC54m7FkU4c98VOm0aolsxAQuaR5bAYQLCPXZgROnokvxpIoGBFFZ?= =?us-ascii?Q?7JnBLL4dpTXKBb2fbB8mFRGsAR7wsjt6AR2qR/UXthH7BgL3yBEiFdXwCb1B?= =?us-ascii?Q?le5vOoUgtWzdBKKaLayV7iVFYLRU/pV4SYNDHvN+3teFnoDzeSCNmECtOT5P?= =?us-ascii?Q?mMTODCt1Li/pgazEmeiwMJb5z93COWcWy9fOf8FZaoRCmjmGp/TXFgJavEgR?= =?us-ascii?Q?nT0w1OeRkAGclGp/SuUCdYT4gIMrCdK0086bE+mVL6s8UJou+vPbpBFQaDW2?= =?us-ascii?Q?5tTDt3NNBaSyP1xw8W5F+73D3Ij5CyB1mgtj0rnZtiHRateIIxJg8LuV6dvp?= =?us-ascii?Q?xUudlHMa9lsrscgS5xSQnferMIPinvVaFamLEG0YGLINhdlJzL3TKIRPaRX7?= =?us-ascii?Q?AiyjEX0CwVujqLbP98Kmu8fEdOu+8D+AqJ6AOjMgwj2FdOPvKO9hqieASDWI?= =?us-ascii?Q?MyK1vEeofODP0UNuR5yXL1C/zWE1dLamEQ5DsosFGa4lDdkoq+WKFwj+Mz1g?= =?us-ascii?Q?GrjmIN9zRwxwVT9F6Guyppk+VePW8EPSMtyr+Rkh5JssHMT/9nnb8Jt3aRV6?= =?us-ascii?Q?F5wcsqslnLFEeg2zwP2nmZ4XcXyHji6ohMabxOkHiUKHV6a9CwE9U8Agk1hy?= =?us-ascii?Q?abs7gG98zSWs/TKHBnuFsC+djqSVUyjBuMelWFt1XngR0As8i5Ww9uL/ca7k?= =?us-ascii?Q?9eLfgJ61QeaLlVcKokN9b+ShcR01EonvtZrMEP8qCXgQm4FjlmkX6uORykmB?= =?us-ascii?Q?wCFlcKOuz0AY3ys6HSeGRKVDnVlBxyEMouG3T5rgYKvdI+5Qp7BuLNJugEU0?= =?us-ascii?Q?urSbBBPpMKbtWtVP2zj1A9TvW850tcE52SASFkhgrspLRRAHYOpduG+1blKw?= =?us-ascii?Q?qBiSaXeyya90fgljWNFDdfUQQUQ47tEjjriKKImy7/xlFQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB810; 6:P7+hFSe/QpAMqBSpwdP7LCC0OE/VOJDRCa0wV7/O5vDh0NaO1KZ3tXRvpOp8MSL9ZNP1Ioj1spFTxg6aVJ8Hbkp/sszyePCk+ztgooRvE52dAX+snaC2PM4aatcrkuMPsFjUkDm0XSOOFWe22ROD9zomPfYc0I3NDx1BCY/0x/YOLqVUD9HMBC/PsZNPtfSsdc0pXszESvJqWlgvnjAR+/7l80s40ACXpL5GAmTY98PiTJmGiJLRVN6eth6CoUE2JpSJWtOZy9yf90jmR3iMzjbr7wq0r+1XK37woXiZQoEVoMn502qL7JumXaGEAxfcB9hGOo6kahlRnAqGdmeFWaQ5fZzysdyErE/ZkZGzpuk93DNyUfmtGi2zYVQ0xQlkrV/bNtQtiSpKiA4N1Z/cyw==; 5:E+aBlA2jb2aCqfluIsP5CS2XrbaknvJlBy1yhlMLcXQKzqbj0m1oEPn++z8DJSZhyNwOqGmJC/7BYDbSu9200MkSgnwEGzq+Pr3x3UOfDMXsF/uKzWPhzzHFnXVbNMMgnlXV/QcimC5OvmsmRKT97Q==; 24:zwDOIZWue8Vn+SPqFThePnTApU0fVk1oOk/JT6Ar9alpXgvkH0XvtpTRHgW/8ad9ZFG8bW6GQucErm00rxsSuhLNG54CRjcxmUZg+TXar84= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR0701MB810; 7:XBRKeF4d5TwqZVJzlhKyMewvA1+vDyHQBaNbMFiB6pCytjpdLkfSb20TX1n6MXwwMVWxRgTam3oQ88OpvfuuYAQGry2CvHxrSQSP7BgUcnRLaaCD0gRlupm2TOBrYn9Nh+Ns7tVbQRDojc6cxRRQaunk2AslqKbKXfEBL4Gq/7zyfWk8vE1+i9JjdB/mJP3ntO+99NbEKe0c9piaCJOZfUm3Ti/ixtPTzH9DOYDvaI/dJ98ySqNXWHOlTVRtVUieIenp0PvequjA1cOUZF4Qxskrei8Zps3Hzw1OU9bhtv6VpN+B/Expp93JVlke7xMsnXCZ1RQAA+Up4FeUMrtYng== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2017 17:51:53.1537 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0701MB810 Subject: [dts] [PATCH 08/26] 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: Thu, 06 Apr 2017 17:51:55 -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