patches for DPDK stable branches
 help / color / mirror / Atom feed
From: dapengx.yu@intel.com
To: wenzhuo.lu@intel.com, beilei.xing@intel.com, bernard.iremonger@intel.com
Cc: dev@dpdk.org, YU DAPENG <dapengx.yu@intel.com>, stable@dpdk.org
Subject: [dpdk-stable] [PATCH] app/testpmd: avoid exit without resource release
Date: Thu, 24 Dec 2020 11:57:48 +0800
Message-ID: <20201224035748.67012-1-dapengx.yu@intel.com> (raw)

From: YU DAPENG <dapengx.yu@intel.com>

In interactive mode, if testpmd exit by calling rte_exit without cmdline
resource release, terminal will not echo keyboard input. So add code to
just show error message, but not exit testpmd when unexpected happens
on starting packet forwarding in interactive mode. User can type "quit"
to exit testpmd later.

Fixes: 5a8fb55c48ab ("app/testpmd: support unidirectional configuration")
Cc: stable@dpdk.org

Signed-off-by: YU DAPENG <dapengx.yu@intel.com>
---
 app/test-pmd/testpmd.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 33fc0fddf..0071c7235 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -2194,10 +2194,18 @@ start_packet_forwarding(int with_tx_first)
 
 	if ((strcmp(cur_fwd_eng->fwd_mode_name, "rxonly") != 0 &&
 		strcmp(cur_fwd_eng->fwd_mode_name, "txonly") != 0) &&
-		(!nb_rxq || !nb_txq))
+		(!nb_rxq || !nb_txq)) {
+#ifdef RTE_LIB_CMDLINE
+		if (interactive == 1) {
+			printf("Either rxq or txq are 0, cannot use %s fwd mode\n",
+				cur_fwd_eng->fwd_mode_name);
+			return;
+		}
+#endif
 		rte_exit(EXIT_FAILURE,
 			"Either rxq or txq are 0, cannot use %s fwd mode\n",
 			cur_fwd_eng->fwd_mode_name);
+	}
 
 	if (all_ports_started() == 0) {
 		printf("Not all ports were started\n");
-- 
2.27.0


             reply	other threads:[~2020-12-24  3:58 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-24  3:57 dapengx.yu [this message]
2020-12-25  3:03 ` [dpdk-stable] [dpdk-dev] " Stephen Hemminger
2020-12-25  5:09   ` Yu, DapengX
2021-01-15  3:28     ` Yu, DapengX
2021-01-15  5:50       ` Xing, Beilei
2021-01-15  6:05         ` Yu, DapengX
2021-01-15  9:21         ` Li, Xiaoyun
2021-01-18 11:47           ` Yu, DapengX
2021-01-25  3:29 ` [dpdk-stable] [PATCH v2] app/testpmd: avoid exit without terminal restore dapengx.yu
2021-01-26  6:33   ` Li, Xiaoyun
2021-01-26  7:13     ` Yu, DapengX
2021-01-26  7:44     ` Yu, DapengX
2021-01-26  8:24       ` Li, Xiaoyun
2021-01-29 10:46         ` Ferruh Yigit

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=20201224035748.67012-1-dapengx.yu@intel.com \
    --to=dapengx.yu@intel.com \
    --cc=beilei.xing@intel.com \
    --cc=bernard.iremonger@intel.com \
    --cc=dev@dpdk.org \
    --cc=stable@dpdk.org \
    --cc=wenzhuo.lu@intel.com \
    /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

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git