From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 2BFDC10BA9 for ; Thu, 30 Mar 2017 10:57:29 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490864248; x=1522400248; h=from:to:cc:subject:date:message-id:references: content-transfer-encoding:mime-version; bh=NLgjTvMKKzENkTgzcnsfXCpZ5V/u8DScPTVlJM4UKQQ=; b=HmbcXigHeNTdAwHZJ3l4f70MBmWzca+c0lHxRoOQ4jx7m9yyh87qQTX8 VodhsWuP/I3xf/NW8howq/BfZGiicA==; Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Mar 2017 01:57:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,246,1486454400"; d="scan'208";a="241962585" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga004.fm.intel.com with ESMTP; 30 Mar 2017 01:57:29 -0700 Received: from fmsmsx112.amr.corp.intel.com (10.18.116.6) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 30 Mar 2017 01:57:28 -0700 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by FMSMSX112.amr.corp.intel.com (10.18.116.6) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 30 Mar 2017 01:57:28 -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; Thu, 30 Mar 2017 16:57:22 +0800 From: "Wu, Jingjing" To: "Zhao1, Wei" , "dev@dpdk.org" CC: "Zhao1, Wei" , "Lu, Wenzhuo" Thread-Topic: [dpdk-dev] [PATCH v3 3/3] app/testpmd: add port reset command into testpmd Thread-Index: AQHSp5ubB3KY35fBAUiWw7aAPoDSY6GtFQWAgAACzkA= Date: Thu, 30 Mar 2017 08:57:22 +0000 Message-ID: <9BB6961774997848B5B42BEC655768F810D1B5BF@SHSMSX103.ccr.corp.intel.com> References: <1490688547-4831-1-git-send-email-wei.zhao1@intel.com> <1490688547-4831-4-git-send-email-wei.zhao1@intel.com> Accept-Language: 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: [dpdk-dev] [PATCH v3 3/3] app/testpmd: add port reset command into testpmd 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: , X-List-Received-Date: Thu, 30 Mar 2017 08:57:30 -0000 > -----Original Message----- > From: Wu, Jingjing > Sent: Thursday, March 30, 2017 4:55 PM > To: 'Wei Zhao' ; dev@dpdk.org > Cc: Zhao1, Wei ; Lu, Wenzhuo > Subject: RE: [dpdk-dev] [PATCH v3 3/3] app/testpmd: add port reset comman= d > into testpmd >=20 >=20 >=20 > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wei Zhao > > Sent: Tuesday, March 28, 2017 4:09 PM > > To: dev@dpdk.org > > Cc: Zhao1, Wei ; Lu, Wenzhuo > > > > Subject: [dpdk-dev] [PATCH v3 3/3] app/testpmd: add port reset command > > into testpmd > > > > Add port reset command into testpmd project, it is the interface for > > user to reset port. > > And also it is not limit to be used only in vf reset, but also for pf > > port reset.But this patch set only realted to vf reset feature. > > > > Signed-off-by: Wei Zhao > > Signed-off-by: Wenzhuo Lu > > --- > > app/test-pmd/cmdline.c | 17 ++++++++++---- app/test-pmd/testpmd.c | > > 63 > > ++++++++++++++++++++++++++++++++++++++++++++++++++ > > app/test-pmd/testpmd.h | 1 + > > 3 files changed, 77 insertions(+), 4 deletions(-) > > > > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index > > 47f935d..6cbdcc8 100644 > > --- a/app/test-pmd/cmdline.c > > +++ b/app/test-pmd/cmdline.c > > @@ -599,6 +599,9 @@ static void cmd_help_long_parsed(void > *parsed_result, > > "port close (port_id|all)\n" > > " Close all ports or port_id.\n\n" > > > > + "port reset (port_id|all)\n" > > + " Reset all ports or port_id.\n\n" > > + > > "port attach (ident)\n" > > " Attach physical or virtual dev by pci address or > > virtual device name\n\n" > > > > @@ -909,6 +912,8 @@ static void cmd_operate_port_parsed(void > > *parsed_result, > > stop_port(RTE_PORT_ALL); > > else if (!strcmp(res->name, "close")) > > close_port(RTE_PORT_ALL); > > + else if (!strcmp(res->name, "reset")) > > + reset_port(RTE_PORT_ALL); > > else > > printf("Unknown parameter\n"); > > } > > @@ -918,14 +923,15 @@ cmdline_parse_token_string_t > > cmd_operate_port_all_cmd =3D > > "port"); > > cmdline_parse_token_string_t cmd_operate_port_all_port =3D > > TOKEN_STRING_INITIALIZER(struct cmd_operate_port_result, name, > > - "start#stop#close"); > > + "start#stop#close#reset"); > > cmdline_parse_token_string_t cmd_operate_port_all_all =3D > > TOKEN_STRING_INITIALIZER(struct cmd_operate_port_result, value, > > "all"); > > > > cmdline_parse_inst_t cmd_operate_port =3D { > > .f =3D cmd_operate_port_parsed, > > .data =3D NULL, > > - .help_str =3D "port start|stop|close all: Start/Stop/Close all ports"= , > > + .help_str =3D "port start|stop|close|reset all: Start/Stop/Close/" > > + "Reset all ports", > > .tokens =3D { > > (void *)&cmd_operate_port_all_cmd, > > (void *)&cmd_operate_port_all_port, @@ -953,6 +959,8 @@ > static void > > cmd_operate_specific_port_parsed(void > > *parsed_result, > > stop_port(res->value); > > else if (!strcmp(res->name, "close")) > > close_port(res->value); > > + else if (!strcmp(res->name, "reset")) > > + reset_port(res->value); > > else > > printf("Unknown parameter\n"); > > } > > @@ -962,7 +970,7 @@ cmdline_parse_token_string_t > > cmd_operate_specific_port_cmd =3D > > keyword, "port"); > > cmdline_parse_token_string_t cmd_operate_specific_port_port =3D > > TOKEN_STRING_INITIALIZER(struct cmd_operate_specific_port_result, > > - name, "start#stop#close"); > > + name, > > "start#stop#close#reset"); > > cmdline_parse_token_num_t cmd_operate_specific_port_id =3D > > TOKEN_NUM_INITIALIZER(struct cmd_operate_specific_port_result, > > value, UINT8); > > @@ -970,7 +978,8 @@ cmdline_parse_token_num_t > > cmd_operate_specific_port_id =3D cmdline_parse_inst_t > > cmd_operate_specific_port =3D { > > .f =3D cmd_operate_specific_port_parsed, > > .data =3D NULL, > > - .help_str =3D "port start|stop|close : Start/Stop/Close port= _id", > > + .help_str =3D "port start|stop|close|reset : Start/Stop/Clos= e/" > > + "Reset port_id", > > .tokens =3D { > > (void *)&cmd_operate_specific_port_cmd, > > (void *)&cmd_operate_specific_port_port, > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index > > 484c19b..a053562 100644 > > --- a/app/test-pmd/testpmd.c > > +++ b/app/test-pmd/testpmd.c > > @@ -137,6 +137,7 @@ portid_t nb_fwd_ports; /**< Number of forwarding > > ports. */ > > > > unsigned int fwd_lcores_cpuids[RTE_MAX_LCORE]; /**< CPU ids > configuration. > > */ > > portid_t fwd_ports_ids[RTE_MAX_ETHPORTS]; /**< Port ids configura= tion. > > */ > > +volatile char reset_ports[RTE_MAX_ETHPORTS] =3D {0}; /**< Portr reset > > +falg. */ Typo: Portr->port, and falg->flag