On 02.08.2018 16:35, Kevin Traynor wrote:
On 08/02/2018 01:59 PM, Andrew Rybchenko wrote:
On 02.08.2018 15:33, Kevin Traynor wrote:
Change log level of messages from ERR back to DEBUG where
existing API indicates that the condition is a success.

This means applications using the API in its current form will
not get new ERR logs.

Fixes: bea1e0c70cfc ("ethdev: convert static log type usage to dynamic")

Signed-off-by: Kevin Traynor <ktray...@redhat.com>
---
   lib/librte_ethdev/rte_ethdev.c | 12 ++++++------
   1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/librte_ethdev/rte_ethdev.c
b/lib/librte_ethdev/rte_ethdev.c
index c7ab157..16656d2 100644
--- a/lib/librte_ethdev/rte_ethdev.c
+++ b/lib/librte_ethdev/rte_ethdev.c
@@ -797,5 +797,5 @@ struct rte_eth_dev *
         if (dev->data->rx_queue_state[rx_queue_id] !=
RTE_ETH_QUEUE_STATE_STOPPED) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Queue %"PRIu16" of device with port_id=%"PRIu16"
already started\n",
               rx_queue_id, port_id);
@@ -824,5 +824,5 @@ struct rte_eth_dev *
         if (dev->data->rx_queue_state[rx_queue_id] ==
RTE_ETH_QUEUE_STATE_STOPPED) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Queue %"PRIu16" of device with port_id=%"PRIu16"
already stopped\n",
               rx_queue_id, port_id);
@@ -857,5 +857,5 @@ struct rte_eth_dev *
         if (dev->data->tx_queue_state[tx_queue_id] !=
RTE_ETH_QUEUE_STATE_STOPPED) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Queue %"PRIu16" of device with port_id=%"PRIu16"
already started\n",
               tx_queue_id, port_id);
@@ -882,5 +882,5 @@ struct rte_eth_dev *
         if (dev->data->tx_queue_state[tx_queue_id] ==
RTE_ETH_QUEUE_STATE_STOPPED) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Queue %"PRIu16" of device with port_id=%"PRIu16"
already stopped\n",
               tx_queue_id, port_id);
@@ -1287,5 +1287,5 @@ struct rte_eth_dev *
         if (dev->data->dev_started != 0) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Device with port_id=%"PRIu16" already started\n",
               port_id);
@@ -1319,5 +1319,5 @@ struct rte_eth_dev *
         if (dev->data->dev_started == 0) {
-        RTE_ETHDEV_LOG(ERR,
+        RTE_ETHDEV_LOG(DEBUG,
               "Device with port_id=%"PRIu16" already stopped\n",
               port_id);
I would suggest to use WARNING here. Yes, it is not an error since
nothing bad has
happened and we handle duplicate stop and duplicate start,
but I think it is bad that (buggy?) application does it. Making it debug
we simply
hide it too much.

I think an application following the documented API is not bad or buggy.

I've failed to find the place were it is documented that device/queue
may be stopped/started twice. Could you point out?
Yes, return value 0 means success, but it is a separate thing.

An application may not maintain some state and always call a stop before
a start etc. in line with the API.

I don't think an API success condition should be changed from a debug
message to anything else. Otherwise, it is trying to flag a warning
about the application which is following the API! It and will just spook
people when they see a new warning.

Reply via email to