On 11/14/2022 11:59 AM, Rongwei Liu wrote:
> In case flow rules match only one kind of traffic in a flow table,
> then optimization can be done via allocation of this table.
> Such optimization is possible only if the application gives a hint
> about its usage of the table during initial configuration.
> 
> The transfer domain rules may process traffic from wire or vport,
> which may correspond to two kinds of underlayer resources.
> That's why the first two hints introduced in this patch are about
> wire and vport traffic specialization.
> Wire means traffic arrives from the uplink port while vport means
> traffic initiated from VF/SF.
> 
> There are two possible approaches for providing the hints.
> Using IPv4 as an example:
> 1. Use pattern item in both template table and flow rules.
> 
>    pattern_template: pattern ANY_VPORT / eth / ipv4 is 1.1.1.1 / end
>    async flow create: pattern ANY_VPORT / eth / ipv4 is 1.1.1.2 / end
> 
>    "ANY_VPORT" needs to be present in each flow rule even if it's
>    just a hint. No value to match because matching is already done by
>    IPv4 item.
> 
> 2. Add special flags into table_attr.
> 
>    template_table 0 create table_id 0 group 1 transfer vport_orig
> 
> Approach 1 needs to specify the pattern in each flow rule which wastes
> memory and is not user friendly.
> This patch takes the 2nd approach and introduces one new member
> "specialize" into rte_flow_table_attr to indicate possible flow table
> optimization.
> 
> By default, there is no hint, so the behavior of the transfer domain
> doesn't change.
> There is no guarantee that the hint will be used by the PMD.
> 
> Signed-off-by: Rongwei Liu <rongw...@nvidia.com>
> Acked-by: Ori Kam <or...@nvidia.com>

Hi Andrew, Ivan,

Do you have objection/comment to latest version, if not I will proceed
with patch?

Thanks,
ferruh

Reply via email to