From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: Re: [PATCH v6 3/3] app/testpmd: set packet dump based on verbosity level Date: Wed, 17 Oct 2018 17:33:24 +0100 Message-ID: References: <1538897848-1693-1-git-send-email-rasland@mellanox.com> <1539789731-18409-1-git-send-email-rasland@mellanox.com> <1539789731-18409-3-git-send-email-rasland@mellanox.com> <8CEF83825BEC744B83065625E567D7C260D1292F@IRSMSX107.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: "thomas@monjalon.net" , "dev@dpdk.org" , "shahafs@mellanox.com" , "xuemingl@mellanox.com" , "orika@mellanox.com" , "jerin.jacob@caviumnetworks.com" , "david.marchand@6wind.com" To: "Iremonger, Bernard" , Raslan Darawsheh , "Wu, Jingjing" Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id A11C04F90 for ; Wed, 17 Oct 2018 18:33:28 +0200 (CEST) In-Reply-To: <8CEF83825BEC744B83065625E567D7C260D1292F@IRSMSX107.ger.corp.intel.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 10/17/2018 5:24 PM, Iremonger, Bernard wrote: > Hi Raslan, > >> -----Original Message----- >> From: Raslan Darawsheh [mailto:rasland@mellanox.com] >> Sent: Wednesday, October 17, 2018 4:22 PM >> To: Wu, Jingjing >> Cc: thomas@monjalon.net; dev@dpdk.org; shahafs@mellanox.com; >> rasland@mellanox.com; xuemingl@mellanox.com; orika@mellanox.com; >> jerin.jacob@caviumnetworks.com; david.marchand@6wind.com; Iremonger, >> Bernard ; Yigit, Ferruh >> Subject: [PATCH v6 3/3] app/testpmd: set packet dump based on verbosity level >> >> when changing verbosity level it will configure rx/tx callbacks to dump packets >> based on the verbosity value as following: >> 1- dump only received packets: >> testpmd> set verbose 1 >> 2- dump only sent packets: >> testpmd> set verbose 2 >> 3- dump sent and received packets: >> testpmd> set verbose (any number > 2) >> 4- disable dump >> testpmd> set verbose 0 >> >> Signed-off-by: Raslan Darawsheh >> Acked-by: Bernard Iremonger >> >> --- >> changes in v6: >> add documentation for the packet dump >> --- >> --- >> app/test-pmd/config.c | 25 +++++++++++++++++++++++++ >> app/test-pmd/testpmd.c | 4 ++-- >> app/test-pmd/testpmd.h | 1 + >> doc/guides/testpmd_app_ug/testpmd_funcs.rst | 6 +++++- >> 4 files changed, 33 insertions(+), 3 deletions(-) >> >> diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index >> 55fec7f..1696623 100644 >> --- a/app/test-pmd/config.c >> +++ b/app/test-pmd/config.c >> @@ -50,6 +50,7 @@ >> #endif >> #include >> #include >> +#include >> >> #include "testpmd.h" >> >> @@ -2773,11 +2774,35 @@ remove_tx_dump_callbacks(portid_t portid) } >> >> void >> +configure_rxtx_dump_callbacks(uint16_t verbose) { >> + portid_t portid; >> + >> +#ifndef RTE_ETHDEV_RXTX_CALLBACKS >> + TESTPMD_LOG(ERR, "setting rxtx callbacks is not enabled\n"); >> + return; >> +#endif >> + >> + RTE_ETH_FOREACH_DEV(portid) >> + { >> + if (verbose == 1 || verbose > 2) >> + add_rx_dump_callbacks(portid); >> + else >> + remove_rx_dump_callbacks(portid); >> + if (verbose >= 2) >> + add_tx_dump_callbacks(portid); >> + else >> + remove_tx_dump_callbacks(portid); >> + } >> +} >> + >> +void >> set_verbose_level(uint16_t vb_level) >> { >> printf("Change verbose level from %u to %u\n", >> (unsigned int) verbose_level, (unsigned int) vb_level); >> verbose_level = vb_level; >> + configure_rxtx_dump_callbacks(verbose_level); >> } >> >> void >> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index >> 5dbbf78..3c42924 100644 >> --- a/app/test-pmd/testpmd.c >> +++ b/app/test-pmd/testpmd.c >> @@ -1988,7 +1988,7 @@ start_port(portid_t pid) >> return -1; >> } >> } >> - >> + configure_rxtx_dump_callbacks(0); >> printf("Configuring Port %d (socket %u)\n", pi, >> port->socket_id); >> /* configure port */ >> @@ -2087,7 +2087,7 @@ start_port(portid_t pid) >> return -1; >> } >> } >> - >> + configure_rxtx_dump_callbacks(verbose_level); >> /* start port */ >> if (rte_eth_dev_start(pi) < 0) { >> printf("Fail to start port %d\n", pi); diff --git a/app/test- >> pmd/testpmd.h b/app/test-pmd/testpmd.h index c07bee8..3da728c 100644 >> --- a/app/test-pmd/testpmd.h >> +++ b/app/test-pmd/testpmd.h >> @@ -777,6 +777,7 @@ void add_rx_dump_callbacks(portid_t portid); void >> remove_rx_dump_callbacks(portid_t portid); void >> add_tx_dump_callbacks(portid_t portid); void >> remove_tx_dump_callbacks(portid_t portid); >> +void configure_rxtx_dump_callbacks(uint16_t verbose); >> >> /* >> * Work-around of a compilation error with ICC on invocations of the diff --git >> a/doc/guides/testpmd_app_ug/testpmd_funcs.rst >> b/doc/guides/testpmd_app_ug/testpmd_funcs.rst >> index ca060e1..60855c6 100644 >> --- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst >> +++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst >> @@ -449,7 +449,11 @@ Set the debug verbosity level:: >> >> testpmd> set verbose (level) >> >> -Currently the only available levels are 0 (silent except for error) and 1 (fully >> verbose). >> +Available levels are as following: >> +* ``0`` silent except for error. >> +* ``1`` fully verbose except for Tx packets. >> +* ``2`` fully verbose except for Rx packets. >> +* ``> 2`` fully verbose. >> > > The html output is probably not what you intended: > > Available levels are as following: * 0 silent except for error. * 1 fully verbose except for Tx packets. * 2 fully verbose except for Rx packets. * > 2 fully verbose. > > A blank line is needed between each line. You a right, output is broken. I updated in the tree, just one blank line before list seems did the work. Raslan can you please confirm the latest doc in the tree? > >> set log >> ~~~~~~~ >> -- >> 2.7.4 > > Regards, > > Bernard. > >