From: Ferruh Yigit <ferruh.yigit@amd.com>
To: zhoumin <zhoumin@loongson.cn>,
aman.deep.singh@intel.com, yuying.zhang@intel.com
Cc: dev@dpdk.org, maobibo@loongson.cn,
Qiming Yang <qiming.yang@intel.com>,
Wenjun Wu <wenjun1.wu@intel.com>
Subject: Re: [RFC] app/testpmd: use RSS conf from software when configuring DCB
Date: Tue, 6 Jun 2023 19:09:03 +0100 [thread overview]
Message-ID: <38f4bfd4-fced-bd0b-6261-1b34cd894dda@amd.com> (raw)
In-Reply-To: <84cee6de-3b42-11ac-202e-22ff24ee289e@loongson.cn>
On 5/8/2023 2:21 AM, zhoumin wrote:
> Kindly ping.
>
Hi Min,
Sorry for the delay.
> Should we solve this problem by modifying PMDs?
>
> Is it suitable to maintain the RSS configurations for NIC by testpmd in
> order to set DCB?
>
>
> On Thur, Apr 27, 2023 at 4:33PM, zhoumin wrote:
>> Kindly ping.
>>
>> Any comments or suggestions will be appreciated.
>>
>> Best regards
>> Min
>>
>>
>> On 2023/4/12 下午5:52, Min Zhou wrote:
>>> In the testpmd command, we have to stop the port firstly before
>>> configuring
>>> the DCB. However, some PMDs may execute a hardware reset during the port
>>> stop, such as ixgbe. Some kind of reset operations of PMD could clear
>>> the
>>> configurations of RSS in the hardware register. This would cause the
>>> loss
>>> of RSS configurations that were set during the testpmd
>>> initialization. As
>>> a result, I find that I cannot enable RSS and DCB at the same time in
>>> the
>>> testpmd command when using Intel 82599 NIC.
>>>
cc'ed ixgbe maintainers too.
@Qiming, @Wenjun, are you testing DCB with RSS configuration?
Min,
Can you please give more detail on the problem, do you have in only on
device reset, or is there a generic problem on enabling DCB with RSS?
Also can you please describe how/why removing RSS configuration (this
patch) helps on the problem?
Thanks,
ferruh
>>> Although this patch can solve the problem I encountered, is there any
>>> risk
>>> of using rss conf from software instead of reading from the hardware
>>> register when configuring DCB?
>>>
>>> Signed-off-by: Min Zhou <zhoumin@loongson.cn>
>>> ---
>>> app/test-pmd/testpmd.c | 11 +----------
>>> 1 file changed, 1 insertion(+), 10 deletions(-)
>>>
>>> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
>>> index 5cb6f92523..3c382267b8 100644
>>> --- a/app/test-pmd/testpmd.c
>>> +++ b/app/test-pmd/testpmd.c
>>> @@ -4247,14 +4247,12 @@ const uint16_t vlan_tags[] = {
>>> };
>>> static int
>>> -get_eth_dcb_conf(portid_t pid, struct rte_eth_conf *eth_conf,
>>> +get_eth_dcb_conf(portid_t pid __rte_unused, struct rte_eth_conf
>>> *eth_conf,
>>> enum dcb_mode_enable dcb_mode,
>>> enum rte_eth_nb_tcs num_tcs,
>>> uint8_t pfc_en)
>>> {
>>> uint8_t i;
>>> - int32_t rc;
>>> - struct rte_eth_rss_conf rss_conf;
>>> /*
>>> * Builds up the correct configuration for dcb+vt based on the
>>> vlan tags array
>>> @@ -4296,12 +4294,6 @@ get_eth_dcb_conf(portid_t pid, struct
>>> rte_eth_conf *eth_conf,
>>> struct rte_eth_dcb_tx_conf *tx_conf =
>>> ð_conf->tx_adv_conf.dcb_tx_conf;
>>> - memset(&rss_conf, 0, sizeof(struct rte_eth_rss_conf));
>>> -
>>> - rc = rte_eth_dev_rss_hash_conf_get(pid, &rss_conf);
>>> - if (rc != 0)
>>> - return rc;
>>> -
>>> rx_conf->nb_tcs = num_tcs;
>>> tx_conf->nb_tcs = num_tcs;
>>> @@ -4313,7 +4305,6 @@ get_eth_dcb_conf(portid_t pid, struct
>>> rte_eth_conf *eth_conf,
>>> eth_conf->rxmode.mq_mode =
>>> (enum rte_eth_rx_mq_mode)
>>> (rx_mq_mode & RTE_ETH_MQ_RX_DCB_RSS);
>>> - eth_conf->rx_adv_conf.rss_conf = rss_conf;
>>> eth_conf->txmode.mq_mode = RTE_ETH_MQ_TX_DCB;
>>> }
>
> Best regards,
>
> Min
>
next prev parent reply other threads:[~2023-06-06 18:09 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-12 9:52 Min Zhou
2023-04-27 8:33 ` zhoumin
2023-05-08 1:21 ` zhoumin
2023-06-06 18:09 ` Ferruh Yigit [this message]
2023-06-14 2:22 ` zhoumin
2024-10-09 22:30 ` Stephen Hemminger
2024-11-20 9:08 ` zhoumin
2024-11-20 9:37 ` [v2 1/1] " Min Zhou
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=38f4bfd4-fced-bd0b-6261-1b34cd894dda@amd.com \
--to=ferruh.yigit@amd.com \
--cc=aman.deep.singh@intel.com \
--cc=dev@dpdk.org \
--cc=maobibo@loongson.cn \
--cc=qiming.yang@intel.com \
--cc=wenjun1.wu@intel.com \
--cc=yuying.zhang@intel.com \
--cc=zhoumin@loongson.cn \
/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).