From: "Simon Kågström" <simon.kagstrom@netinsight.net>
To: "Pattan, Reshma" <reshma.pattan@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>,
"thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
Subject: Re: [PATCH / RFC ] ethdev: Allow rte_eth_dev_configure with zero RX/TX queues
Date: Mon, 16 May 2016 12:32:52 +0200 [thread overview]
Message-ID: <5739A1D4.6010003@netinsight.net> (raw)
In-Reply-To: <3AEA2BF9852C6F48A459DA490692831F0102622D@IRSMSX109.ger.corp.intel.com>
On 2016-05-16 12:24, Pattan, Reshma wrote:
>> 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;
>> - }
>
> This was added to allow devices, at least with one direction (RX/TX) supported. As, devices with both directions disabled doesn't make sense right?
Well, not for running them, no. But this is a part of the shutdown
procedure between tests (I should have been more clear I guess).
As far as I can see in the code, rte_eth_dev_configure() is the only
point which actually calls {rx,tx}_queue_release(), so without this
call, we can't get the memory pool full again.
So basically, our test suite looks like
rte_eth_dev_configure(port, 32, 32); // For example
<run a test>
rte_eth_dev_configure(port, 0, 0);
Check that the mempool is full again
rte_eth_dev_configure(port, 32, 32);
<run another test>
rte_eth_dev_configure(port, 0, 0);
Check that the mempool is full again
...
And without this fix, the mempool check fails since a few of the buffers
are tied up in the RX descriptor ring of the PMD.
// Simon
next prev parent reply other threads:[~2016-05-16 10:33 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-16 9:33 [PATCH / RFC ] ethdev: Allow rte_eth_dev_configure with zero RX/TX queues Simon Kagstrom
2016-05-16 10:24 ` Pattan, Reshma
2016-05-16 10:32 ` Simon Kågström [this message]
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=5739A1D4.6010003@netinsight.net \
--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.