DPDK patches and discussions
 help / color / mirror / Atom feed
From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
To: "Ye, MingjinX" <mingjinx.ye@intel.com>,
	"lihuisong (C)" <lihuisong@huawei.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Cc: "stable@dpdk.org" <stable@dpdk.org>,
	"Zhou, YidingX" <yidingx.zhou@intel.com>,
	"Singh, Aman Deep" <aman.deep.singh@intel.com>,
	"Zhang, Yuying" <yuying.zhang@intel.com>
Subject: Re: [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq
Date: Sun, 6 Nov 2022 13:32:57 +0300	[thread overview]
Message-ID: <67e8fd1a-4d7b-232e-6b0c-e6b40c88251e@oktetlabs.ru> (raw)
In-Reply-To: <SN7PR11MB7139B64776E8E7054019D593E53B9@SN7PR11MB7139.namprd11.prod.outlook.com>

On 11/4/22 14:33, Ye, MingjinX wrote:
> 
> 
>> -----Original Message-----
>> From: lihuisong (C) <lihuisong@huawei.com>
>> Sent: 2022年11月4日 18:18
>> To: Ye, MingjinX <mingjinx.ye@intel.com>; dev@dpdk.org
>> Cc: stable@dpdk.org; Zhou, YidingX <yidingx.zhou@intel.com>; Singh, Aman
>> Deep <aman.deep.singh@intel.com>; Zhang, Yuying
>> <yuying.zhang@intel.com>
>> Subject: Re: [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq
>>
>>
>> 在 2022/11/4 16:21, Ye, MingjinX 写道:
>>>
>>>> -----Original Message-----
>>>> From: lihuisong (C) <lihuisong@huawei.com>
>>>> Sent: 2022年11月3日 15:01
>>>> To: Ye, MingjinX <mingjinx.ye@intel.com>; dev@dpdk.org
>>>> Cc: stable@dpdk.org; Zhou, YidingX <yidingx.zhou@intel.com>; Singh,
>>>> Aman Deep <aman.deep.singh@intel.com>; Zhang, Yuying
>>>> <yuying.zhang@intel.com>
>>>> Subject: Re: [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq
>>>>
>>>>
>>>> 在 2022/11/3 9:28, Ye, MingjinX 写道:
>>>>>> -----Original Message-----
>>>>>> From: lihuisong (C) <lihuisong@huawei.com>
>>>>>> Sent: 2022年10月28日 10:09
>>>>>> To: Ye, MingjinX <mingjinx.ye@intel.com>; dev@dpdk.org
>>>>>> Cc: stable@dpdk.org; Zhou, YidingX <yidingx.zhou@intel.com>; Singh,
>>>>>> Aman Deep <aman.deep.singh@intel.com>; Zhang, Yuying
>>>>>> <yuying.zhang@intel.com>
>>>>>> Subject: Re: [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq
>>>>>>
>>>>>>
>>>>>> 在 2022/10/27 19:02, Ye, MingjinX 写道:
>>>>>>> Hi lihuisong,
>>>>>>>
>>>>>>> This means that queue offloads need to update by recalling
>>>>>>> dev_configure and setup target queues.
>>>>>> Why not update queue offloads in PMD?
>>>>>>> Can you tell me, where is the limitation?
>>>>>> According to other Rx/Tx offload configurations, this may not be a
>>>> limitation.
>>>>>> But it seems to create a dependency on user usage.
>>>>>>
>>>>>> Port VLAN releated offloads are set by ethdev ops. There is no
>>>>>> requirement in ehedev layer that this port needs to stopped when
>>>>>> set
>>>> these offloads.
>>>>>> Now it depends on user does recall dev_configure and setup queues
>>>>>> to update queue offloads because of setting these offloads.
>>>>>>> Thanks,
>>>>>>> Mingjin
>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: lihuisong (C) <lihuisong@huawei.com>
>>>>>>>> Sent: 2022年10月26日 17:53
>>>>>>>> To: Ye, MingjinX <mingjinx.ye@intel.com>; dev@dpdk.org
>>>>>>>> Cc: stable@dpdk.org; Zhou, YidingX <yidingx.zhou@intel.com>;
>>>>>>>> Singh, Aman Deep <aman.deep.singh@intel.com>; Zhang, Yuying
>>>>>>>> <yuying.zhang@intel.com>
>>>>>>>> Subject: Re: [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq
>>>>>>>>
>>>>>>>>
>>>>>>>> 在 2022/10/27 1:10, Mingjin Ye 写道:
>>>>>>>>> After setting vlan offload in testpmd, the result is not updated
>>>>>>>>> to rxq. Therefore, the queue needs to be reconfigured after
>>>>>>>>> executing the "vlan offload" related commands.
>>>>>>>>>
>>>>>>>>> Fixes: a47aa8b97afe ("app/testpmd: add vlan offload support")
>>>>>>>>> Cc: stable@dpdk.org
>>>>>>>>>
>>>>>>>>> Signed-off-by: Mingjin Ye <mingjinx.ye@intel.com>
>>>>>>>>> ---
>>>>>>>>>       app/test-pmd/cmdline.c | 1 +
>>>>>>>>>       1 file changed, 1 insertion(+)
>>>>>>>>>
>>>>>>>>> diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
>>>>>>>>> index 17be2de402..ce125f549f 100644
>>>>>>>>> --- a/app/test-pmd/cmdline.c
>>>>>>>>> +++ b/app/test-pmd/cmdline.c
>>>>>>>>> @@ -4133,6 +4133,7 @@ cmd_vlan_offload_parsed(void
>>>> *parsed_result,
>>>>>>>>>       	else
>>>>>>>>>       		vlan_extend_set(port_id, on);
>>>>>>>>>
>>>>>>>>> +	cmd_reconfig_device_queue(port_id, 1, 1);
>>>>>> In addition, I have some comments:
>>>>>> 1) Normally, the parsed function of testpmd command needed to
>>>>>> re-config port and queue needs to check if port status is STOPED.
>>>>>> Why don't you add this check?
>>>>> The check is exist.
>>>> Where is the check? Currently, it seems that this check does not
>>>> exist in the this command parsed function.
>>> Check if the port is forwarded, in the source file test-pmd.c:2835.
>> I don't understand why you mention the check in start_port(). It should be
>> done in command parsed link other command.
> 
> The command types include configuration and show these two types of commands.
> show commands: There is no need to judge whether the port has stopped working.
> configuration commands: Not all commands need to stop the port, there will be judgment if necessary.
> 
> Hi, @andrew.rybchenko@oktetlabs.ru can you please help review this patch? Thanks.

cmd_vlan_offload_parsed() goes down to the follow ethdev API
functions:
  - rte_eth_dev_set_vlan_strip_on_queue()
  - rte_eth_dev_set_vlan_offload()
There functions may change settings when port is started, running and 
processing traffic. And, as far as I know, it
is the primary goal of these functions. So, we should not
require application to do stop and reconfigure to apply
these settings.

It is an interesting question what should happen if
application stops and starts the port back. As far as I can
see it is not documented and it should be improved. I'd say
that typical application would expect that dynamically done
changes still apply. So, it should not be an application
headache. The patch tries to care about it on application
side and it is wrong from my point of view.

Moreover, if we finally decide that application must care
itself, the second argument should be 1 in stripq case only
since other cases do not reconfigure Rx queue. However,
it will not help anyway since rx_vlan_strip_set_on_queue()
do not save configuration changes in testpmd structures.

> 
>>>>>> If the check is not exist, queue offloads are not updated until the
>>>>>> next port stop/start command is executed. Right?
>>>>> yes
>>>>>> 2) Why is the queue-based VLAN offload API not used?
>>>>> VLAN offload is a port-related configuration. If a single port is
>>>>> changed, the associated queue needs to be all updated in
>>>>> configuration. Therefore, there will be no additional api to configure.
>>>>>>        Like, rte_eth_dev_set_vlan_strip_on_queue. It seems that this
>>>>>> kind of API is
>>>>>>        dedicated to do this.
>>>>>>>> This means that queue offloads need to upadte by re-calling
>>>>>>>> dev_configure and setup all queues, right?
>>>>>>>> If it is, this adds a usage limitation.
>>>>>>>>>       	return;
>>>>>>>>>       }
>>>>>>>>>



  reply	other threads:[~2022-11-06 10:33 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-26 17:10 Mingjin Ye
2022-10-26  9:52 ` lihuisong (C)
2022-10-27 11:02   ` Ye, MingjinX
2022-10-28  2:09     ` lihuisong (C)
2022-11-03  1:28       ` Ye, MingjinX
2022-11-03  7:01         ` lihuisong (C)
2022-11-04  8:21           ` Ye, MingjinX
2022-11-04 10:17             ` lihuisong (C)
2022-11-04 11:33               ` Ye, MingjinX
2022-11-06 10:32                 ` Andrew Rybchenko [this message]
2022-11-07  7:18                   ` Ye, MingjinX
2022-10-26 17:10 ` [PATCH v4 2/2] net/ice: fix vlan offload Mingjin Ye
2022-10-27  8:36   ` Huang, ZhiminX
2022-10-27  8:36 ` [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq Huang, ZhiminX
2022-10-27 13:16   ` Singh, Aman Deep
2022-11-08 13:28 ` [PATCH v5 1/2] net/ice: fix vlan offload Mingjin Ye
2022-11-08 13:28   ` [PATCH v5 2/2] net/ice: fix vlan offload of rxq Mingjin Ye
2022-11-09  1:52     ` Huang, ZhiminX
2022-11-21  2:54     ` [PATCH v6] doc: add PMD known issue Mingjin Ye
2022-11-25  1:55       ` Ye, MingjinX
2022-12-09 10:20         ` Ye, MingjinX
2022-12-13  1:41       ` Zhang, Qi Z
2022-12-13  4:25         ` Ye, MingjinX
2022-12-23  7:32       ` [PATCH v7] " Mingjin Ye
2022-12-26  2:52       ` Mingjin Ye
2022-12-27  9:00       ` Mingjin Ye
2022-12-27 16:40         ` Stephen Hemminger
2023-01-28  6:01         ` [PATCH v8] " Mingjin Ye
2023-01-28 17:17           ` Stephen Hemminger
2023-02-02  2:30             ` Ye, MingjinX
2022-11-09  1:51   ` [PATCH v5 1/2] net/ice: fix vlan offload Huang, ZhiminX
2022-11-11  3:34   ` Ye, MingjinX
  -- strict thread matches above, loose matches on Subject: below --
2022-10-27 11:09 [PATCH v4 1/2] app/testpmd: fix vlan offload of rxq Ye, MingjinX
2022-10-24 17:27 Mingjin Ye
2022-10-24 16:24 Mingjin Ye
2022-10-24 15:44 Mingjin Ye

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=67e8fd1a-4d7b-232e-6b0c-e6b40c88251e@oktetlabs.ru \
    --to=andrew.rybchenko@oktetlabs.ru \
    --cc=aman.deep.singh@intel.com \
    --cc=dev@dpdk.org \
    --cc=lihuisong@huawei.com \
    --cc=mingjinx.ye@intel.com \
    --cc=stable@dpdk.org \
    --cc=yidingx.zhou@intel.com \
    --cc=yuying.zhang@intel.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 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).