All of lore.kernel.org
 help / color / mirror / Atom feed
From: "lihuisong (C)" <lihuisong@huawei.com>
To: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
	"orika@nvidia.com >> Ori Kam" <orika@nvidia.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Cc: Stephen Hemminger <stephen@networkplumber.org>,
	Thomas Monjalon <thomas@monjalon.net>,
	Ferruh Yigit <ferruh.yigit@xilinx.com>,
	huangdaode <huangdaode@huawei.com>,
	"fengchengwen@huawei.com" <fengchengwen@huawei.com>,
	 "liudongdong (C)" <liudongdong3@huawei.com>
Subject: Re: Question about pattern types for rte_flow RSS rule
Date: Mon, 1 Aug 2022 11:39:02 +0800	[thread overview]
Message-ID: <55f8cb7c-22c6-bbf1-b3a2-59cc02bfdb91@huawei.com> (raw)
In-Reply-To: <f7de4db4-1b88-622f-4e03-acd3eee8a72c@oktetlabs.ru>


在 2022/7/31 17:40, Andrew Rybchenko 写道:
> Hi, Huisong!
>
> On 7/29/22 05:30, lihuisong (C) wrote:
>> Hi Ori, and all,
>>
>> For RSS flow rule, pattern item types and RSS types in action
>> are an inclusive relationship, and RSS types contain pattern item
>> types. 
>
> I disagree with the statement. We can redirect various packets,
> but apply RSS on subset only. Everything else goes to the first
> queue (first entry in the redirection table in fact).
Sorry, the statement above is inaccurate.
I mean, pattern item type and RSS types in action are the same for
creating specified types RSS rule, and this configuration is duplicate
in this case(in <1> command, I think). Use one of them can specify
which packet type flow performs action(like <1> or <2> command).

Create a RSS rule that redirect ipv4-tcp flow to queues 1 and 2:
<1> flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss 
types ipv4-tcp end queues 1 2 end / end
<2> flow create 0 ingress pattern end actions rss types ipv4-tcp end 
queues 1 2 end / end
<3> flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss end 
queues 1 2 end / end

What do you think about it, @Andrew and @Ori?
>
>> Is it necessary to set pattern item types when specify RSS
>> types to create a rule? 
>
> No, it is not strictly required. It depends on what you want.
>
>> How should the user set and how should the
>> driver do?
>
> Pattern and action are not strictly related in the case of RSS.
> Pattern defines on which packets the rule is applied.
> Action defines what the rule does. If hash function is not
> applicable to a packet, e.g. ARP packet and ipv4-tcp hash function,
> the hash is 0 and goes via redirection table entry 0.
I know this rule. Ori has already explained the usage of RSS rule in 
rte_flow API,
but I still have a confusion momentioned above.
>
> Andrew.
>
>>
>> Looking forward to your reply.
>>
>> Regards,
>> Huisong
>>
>> 在 2022/7/13 9:34, lihuisong (C) 写道:
>>> Hi all,
>>>
>>> Can someone open my confusion?
>>> I'm looking forward to your reply.
>>>
>>> Thanks,
>>> Huisong.
>>>
>>> 在 2022/7/7 11:50, lihuisong (C) 写道:
>>>> Hi all,
>>>>
>>>> From following testpmd command:
>>>> 'flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss 
>>>> types ipv4-tcp l3-src-only end queues end / end'
>>>> and
>>>> "flow create 0 ingress pattern end actions rss types ipv4-tcp 
>>>> l3-src-only end queues end / end"
>>>>
>>>> I have some confusions about rte_flow RSS rule:
>>>> 1> Do pattern item types need to set when configure rte_flow RSS rule?
>>>> 2> Does the driver need to check and process the pattern? (After 
>>>> all, the RSS types in actions alreadly contain all RSS offload types.)
>>>>
>>>> Have someone explains it?
>>>>
>>>> Regards,
>>>> Huisong
>>>>
>>>> .
>>> .
>
> .

  reply	other threads:[~2022-08-01  3:39 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-07  3:50 Question about pattern types for rte_flow RSS rule lihuisong (C)
2022-07-13  1:34 ` lihuisong (C)
2022-07-29  2:30   ` lihuisong (C)
2022-07-31  9:40     ` Andrew Rybchenko
2022-08-01  3:39       ` lihuisong (C) [this message]
2022-08-01 11:53         ` Andrew Rybchenko
2022-08-01 13:27           ` lihuisong (C)
2022-08-01 14:12             ` Andrew Rybchenko
2022-08-02  1:27               ` lihuisong (C)

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=55f8cb7c-22c6-bbf1-b3a2-59cc02bfdb91@huawei.com \
    --to=lihuisong@huawei.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=dev@dpdk.org \
    --cc=fengchengwen@huawei.com \
    --cc=ferruh.yigit@xilinx.com \
    --cc=huangdaode@huawei.com \
    --cc=liudongdong3@huawei.com \
    --cc=orika@nvidia.com \
    --cc=stephen@networkplumber.org \
    --cc=thomas@monjalon.net \
    /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.