From: Lijun Ou <oulijun@huawei.com>
To: <stable@dpdk.org>, <luca.boccassi@gmail.com>
Cc: <linuxarm@huawei.com>
Subject: [dpdk-stable] [PATCH 19.11.6] ethdev: fix data type in TC queues
Date: Tue, 3 Nov 2020 17:04:20 +0800 [thread overview]
Message-ID: <1604394260-9644-1-git-send-email-oulijun@huawei.com> (raw)
From: Huisong Li <lihuisong@huawei.com>
[ upstream commit 9f6dc8592d54aa2ec1800c53977a31bd7922147b ]
Currently, base and nb_queue in the tc_rxq and tc_txq information
of queue and TC mapping on both TX and RX paths are uint8_t.
However, these data will be truncated when queue number under a TC
is greater than 256. So it is necessary for base and nb_queue to
change from uint8_t to uint16_t.
Fixes: 89d6728c7837 ("ethdev: get DCB information")
Cc: stable@dpdk.org
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
Reviewed-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
Reviewed-by: Dongdong Liu <liudongdong3@huawei.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
doc/guides/rel_notes/release_19_11.rst | 5 +++++
lib/librte_ethdev/rte_ethdev.h | 8 ++++----
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/doc/guides/rel_notes/release_19_11.rst b/doc/guides/rel_notes/release_19_11.rst
index acd18a3..cba8ebd 100644
--- a/doc/guides/rel_notes/release_19_11.rst
+++ b/doc/guides/rel_notes/release_19_11.rst
@@ -457,6 +457,11 @@ API Changes
* ethdev: changed ``rte_eth_dev_owner_delete`` return value from ``void`` to
``int`` to provide a way to report various error conditions.
+* ethdev: Modified field type of ``base`` and ``nb_queue`` in struct
+ ``rte_eth_dcb_tc_queue_mapping`` from ``uint8_t`` to ``uint16_t``.
+ As the data of ``uint8_t`` will be truncated when queue number under
+ a TC is greater than 256.
+
* ethdev: The deprecated function ``rte_eth_dev_count`` was removed.
The function ``rte_eth_dev_count_avail`` is a drop-in replacement.
If the intent is to iterate over ports, ``RTE_ETH_FOREACH_*`` macros
diff --git a/lib/librte_ethdev/rte_ethdev.h b/lib/librte_ethdev/rte_ethdev.h
index 51f9f25..5fedff0 100644
--- a/lib/librte_ethdev/rte_ethdev.h
+++ b/lib/librte_ethdev/rte_ethdev.h
@@ -1360,13 +1360,13 @@ struct rte_eth_xstat_name {
struct rte_eth_dcb_tc_queue_mapping {
/** rx queues assigned to tc per Pool */
struct {
- uint8_t base;
- uint8_t nb_queue;
+ uint16_t base;
+ uint16_t nb_queue;
} tc_rxq[ETH_MAX_VMDQ_POOL][ETH_DCB_NUM_TCS];
/** rx queues assigned to tc per Pool */
struct {
- uint8_t base;
- uint8_t nb_queue;
+ uint16_t base;
+ uint16_t nb_queue;
} tc_txq[ETH_MAX_VMDQ_POOL][ETH_DCB_NUM_TCS];
};
--
2.7.4
next reply other threads:[~2020-11-03 9:04 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-03 9:04 Lijun Ou [this message]
2020-11-03 9:21 ` Luca Boccassi
2020-11-04 10:35 ` oulijun
2020-11-04 10:53 ` Luca Boccassi
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=1604394260-9644-1-git-send-email-oulijun@huawei.com \
--to=oulijun@huawei.com \
--cc=linuxarm@huawei.com \
--cc=luca.boccassi@gmail.com \
--cc=stable@dpdk.org \
/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).