DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Singh, Jasvinder" <jasvinder.singh@intel.com>
To: Thomas Monjalon <thomas@monjalon.net>,
	Moti Haimovsky <motih@mellanox.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"stable@dpdk.org" <stable@dpdk.org>,
	"Dumitrescu, Cristian" <cristian.dumitrescu@intel.com>,
	"Ananyev, Konstantin" <konstantin.ananyev@intel.com>
Subject: Re: [dpdk-dev] [PATCH v2] app/testpmd: removed softnic CLI modifications
Date: Wed, 25 Jul 2018 14:59:22 +0000	[thread overview]
Message-ID: <54CBAA185211B4429112C315DA58FF6D335DDA4D@IRSMSX103.ger.corp.intel.com> (raw)
In-Reply-To: <5594003.g5WaFQLr3r@xps>


> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas@monjalon.net]
> Sent: Wednesday, July 25, 2018 3:43 PM
> To: Moti Haimovsky <motih@mellanox.com>
> Cc: dev@dpdk.org; stable@dpdk.org; Singh, Jasvinder
> <jasvinder.singh@intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>
> Subject: Re: [PATCH v2] app/testpmd: removed softnic CLI modifications
> 
> +Cc
> 
> 25/07/2018 16:40, Moti Haimovsky:
> > This patch reverts the testpmd CLI prompt routine modifications done
> > in order to support softnic.
> > The reason of doing so is due to testpmd abnormal exit observed on
> > several setups caused by the softnic modifications to this routine,
> > for example: When running testpmd with tap interface (/app/testpmd  -n
> > 4 --vdev=net_tap0,iface=tap0,remote=eth1 -- --burst=64
> >  --mbcache=512 -i --nb-cores=7 --rxq=2 --txq=2 --txd=512
> >  --rxd=512 --port-topology=chained --forward-mode=rxonly) testpmd
> > crashes seconds after presenting its prompt with the following
> > error:
> >   testpmd> PANIC in prompt():
> >   CLI poll error (-1)
> >
> >   Thread 1 "testpmd" received signal SIGABRT, Aborted.
> >   0x00007ffff668e0d0 in raise () from /lib64/libc.so.6
> >   (gdb) bt
> >   #0  0x00007ffff668e0d0 in raise () from /lib64/libc.so.6
> >   #1  0x00007ffff668f6b1 in abort () from /lib64/libc.so.6
> >   #2  0x0000000000468027 in __rte_panic ()
> >   #3  0x00000000004876ed in prompt ()
> >   #4  0x000000000046dffc in main ()
> >
> > When running testpmd with bare-metal device (app/testpmd -n 4
> > --socket-mem=1024,1024 -w 04:00.0  --
> >  --burst=64 --mbcache=512 -i  --nb-cores=7
> >  --rxq=64  --txq=4 --txd=16 --rxd=16)
> > and pressing CTRL+D right after testpmd prompt is presented then the
> > program crashes while presenting the same messages as above.
> >
> > Needless to say that this behavior is not observed when using the
> > previous CLI prompt routine.
> >
> > Fixes: 0ad778b398c6 ("app/testpmd: rework softnic forward mode")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Moti Haimovsky <motih@mellanox.com>
> > ---
> > v2:
> > * Removed softnic modifications altogether.
> > v1:
> > * Wrapped softnic modifications with compilation switch.
> > ---
> >  app/test-pmd/cmdline.c | 39 ++-------------------------------------
> >  1 file changed, 2 insertions(+), 37 deletions(-)
> >
> > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index
> > 2c32029..d058860 100644
> > --- a/app/test-pmd/cmdline.c
> > +++ b/app/test-pmd/cmdline.c
> > @@ -17896,50 +17896,15 @@ struct
> > cmd_config_per_queue_tx_offload_result {  void
> >  prompt(void)
> >  {
> > -	int status;
> > -
> >  	/* initialize non-constant commands */
> >  	cmd_set_fwd_mode_init();
> >  	cmd_set_fwd_retry_mode_init();
> >
> > -#if defined RTE_LIBRTE_PMD_SOFTNIC
> > -	portid_t softnic_portid, pid;
> > -	uint8_t softnic_enable = 0;
> > -
> > -	if (strcmp(cur_fwd_eng->fwd_mode_name, "softnic") == 0) {
> > -		RTE_ETH_FOREACH_DEV(pid) {
> > -			struct rte_port *port = &ports[pid];
> > -			const char *driver = port->dev_info.driver_name;
> > -
> > -			if (strcmp(driver, "net_softnic") == 0) {
> > -				softnic_portid = pid;
> > -				softnic_enable = 1;
> > -				break;
> > -			}
> > -		}
> > -	}
> > -#endif
> > -
> >  	testpmd_cl = cmdline_stdin_new(main_ctx, "testpmd> ");
> >  	if (testpmd_cl == NULL)
> >  		return;
> > -
> > -	for (;;) {
> > -		status = cmdline_poll(testpmd_cl);
> > -		if (status < 0)
> > -			rte_panic("CLI poll error (%" PRId32 ")\n", status);
> > -		else if (status == RDLINE_EXITED) {
> > -			cmdline_stdin_exit(testpmd_cl);
> > -			rte_exit(0, "\n");
> > -		}
> > -
> > -#if defined RTE_LIBRTE_PMD_SOFTNIC
> > -
> > -	if ((softnic_enable == 1) &&
> > -		(strcmp(cur_fwd_eng->fwd_mode_name, "softnic") == 0))
> > -		rte_pmd_softnic_manage(softnic_portid);
> > -#endif
> > -	}
> > +	cmdline_interact(testpmd_cl);
> > +	cmdline_stdin_exit(testpmd_cl);
> >  }
> >
> >  void
> >

With above changes in cmdline.c, you should also consider removing following from the file -

#ifdef RTE_LIBRTE_PMD_SOFTNIC
#include <rte_eth_softnic.h>
#endif
 

  reply	other threads:[~2018-07-25 14:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-25 14:40 Moti Haimovsky
2018-07-25 14:42 ` Thomas Monjalon
2018-07-25 14:59   ` Singh, Jasvinder [this message]
2018-07-25 15:30 ` [dpdk-dev] [PATCH v3] " Moti Haimovsky
2018-07-25 16:15   ` Dumitrescu, Cristian
2018-07-25 20:27   ` Aaron Conole
2018-07-26 14:12     ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54CBAA185211B4429112C315DA58FF6D335DDA4D@IRSMSX103.ger.corp.intel.com \
    --to=jasvinder.singh@intel.com \
    --cc=cristian.dumitrescu@intel.com \
    --cc=dev@dpdk.org \
    --cc=konstantin.ananyev@intel.com \
    --cc=motih@mellanox.com \
    --cc=stable@dpdk.org \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).