From: Simon Kagstrom <simon.kagstrom@netinsight.net>
To: dev@dpdk.org, thomas.monjalon@6wind.com, reshma.pattan@intel.com
Subject: [PATCH / RFC ] ethdev: Allow rte_eth_dev_configure with zero RX/TX queues
Date: Mon, 16 May 2016 11:33:49 +0200 [thread overview]
Message-ID: <20160516113349.7d2a992f@miho> (raw)
This allows releasing RX/TX queue memory.
---
We're using DPDK 16.04 and have a test suite which performs a sequence
of separate tests of the type
allocate mempool
rte_eth_dev_configure(port, n_rxq, n_txq, ...)
setup rx/tx queues
rte_eth_dev_start(port)
<perform actual test>
stop rx/tx queues
rte_eth_dev_stop(port)
-> rte_eth_dev_configure(port, 0, 0, ...)
check that there are no leaks from the mempool
The crucial point is the marked line above. This is done so that the
rx_queue_release/tx_queue_release callbacks in the PMD is called, so
that mbufs allocated by the driver is released.
Without this patch, this explicitly isn't allowed. Is there a particular
reason why it shouldn't? It was introduced in
d505ba80a165a9735f3d9d3c6ab68a7bd85f271b
"ethdev: support unidirectional configuration"
lib/librte_ether/rte_ethdev.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index a31018e..5481d45 100644
--- a/lib/librte_ether/rte_ethdev.c
+++ b/lib/librte_ether/rte_ethdev.c
@@ -944,11 +944,6 @@ rte_eth_dev_configure(uint8_t port_id, uint16_t nb_rx_q, uint16_t nb_tx_q,
*/
(*dev->dev_ops->dev_infos_get)(dev, &dev_info);
- if (nb_rx_q == 0 && nb_tx_q == 0) {
- RTE_PMD_DEBUG_TRACE("ethdev port_id=%d both rx and tx queue cannot be 0\n", port_id);
- return -EINVAL;
- }
-
if (nb_rx_q > dev_info.max_rx_queues) {
RTE_PMD_DEBUG_TRACE("ethdev port_id=%d nb_rx_queues=%d > %d\n",
port_id, nb_rx_q, dev_info.max_rx_queues);
--
1.9.1
next reply other threads:[~2016-05-16 9:33 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-16 9:33 Simon Kagstrom [this message]
2016-05-16 10:24 ` [PATCH / RFC ] ethdev: Allow rte_eth_dev_configure with zero RX/TX queues Pattan, Reshma
2016-05-16 10:32 ` Simon Kågström
2016-05-16 12:43 ` Pattan, Reshma
2016-05-16 13:16 ` Simon Kågström
2016-05-20 6:29 ` Simon Kågström
2016-05-20 8:26 ` Pattan, Reshma
2016-06-23 15:53 ` Thomas Monjalon
2018-12-20 23:34 ` 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=20160516113349.7d2a992f@miho \
--to=simon.kagstrom@netinsight.net \
--cc=dev@dpdk.org \
--cc=reshma.pattan@intel.com \
--cc=thomas.monjalon@6wind.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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.