[dpdk-dev] [PATCH v5 12/15] distributor: fix scalar matching
David Hunt
david.hunt at intel.com
Fri Oct 9 14:31:39 CEST 2020
On 8/10/2020 6:23 AM, Lukasz Wojciechowski wrote:
> Fix improper indexes while comparing tags.
> In the find_match_scalar() function:
> * j iterates over flow tags of following packets;
> * w iterates over backlog or in flight tags positions.
>
> Fixes: 775003ad2f96 ("distributor: add new burst-capable library")
> Cc: david.hunt at intel.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Lukasz Wojciechowski <l.wojciechow at partner.samsung.com>
> ---
> lib/librte_distributor/rte_distributor.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/librte_distributor/rte_distributor.c b/lib/librte_distributor/rte_distributor.c
> index 9fd7dcab7..4bd23a990 100644
> --- a/lib/librte_distributor/rte_distributor.c
> +++ b/lib/librte_distributor/rte_distributor.c
> @@ -261,13 +261,13 @@ find_match_scalar(struct rte_distributor *d,
>
> for (j = 0; j < RTE_DIST_BURST_SIZE ; j++)
> for (w = 0; w < RTE_DIST_BURST_SIZE; w++)
> - if (d->in_flight_tags[i][j] == data_ptr[w]) {
> + if (d->in_flight_tags[i][w] == data_ptr[j]) {
> output_ptr[j] = i+1;
> break;
> }
> for (j = 0; j < RTE_DIST_BURST_SIZE; j++)
> for (w = 0; w < RTE_DIST_BURST_SIZE; w++)
> - if (bl->tags[j] == data_ptr[w]) {
> + if (bl->tags[w] == data_ptr[j]) {
> output_ptr[j] = i+1;
> break;
> }
Hi Lukasz,
Could you give a bit more information on the problem that this is fixing?
Were you finding that flows were not being assigned to workers correctly
in the scalar code?
Thanks,
Dave.
More information about the dev
mailing list