[dpdk-dev] [PATCH v5 07/15] distributor: fix return pkt calls in single mode
David Hunt
david.hunt at intel.com
Thu Oct 8 16:32:19 CEST 2020
On 8/10/2020 6:23 AM, Lukasz Wojciechowski wrote:
> In the single legacy version of the distributor synchronization
> requires continues exchange of buffers between distributor
> and workers. Empty buffers are sent if only handshake
> synchronization is required.
> However calls to the rte_distributor_return_pkt()
> with 0 buffers in single mode were ignored and not passed to the
> legacy algorithm implementation causing lack of synchronization.
>
> This patch fixes this issue by passing NULL as buffer which is
> a valid way of sending just synchronization handshakes
> in single mode.
>
> 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 | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/lib/librte_distributor/rte_distributor.c b/lib/librte_distributor/rte_distributor.c
> index 115443fc0..9fd7dcab7 100644
> --- a/lib/librte_distributor/rte_distributor.c
> +++ b/lib/librte_distributor/rte_distributor.c
> @@ -168,6 +168,9 @@ rte_distributor_return_pkt(struct rte_distributor *d,
> if (num == 1)
> return rte_distributor_return_pkt_single(d->d_single,
> worker_id, oldpkt[0]);
> + else if (num == 0)
> + return rte_distributor_return_pkt_single(d->d_single,
> + worker_id, NULL);
> else
> return -EINVAL;
> }
Acked-by: David Hunt <david.hunt at intel.com>
More information about the dev
mailing list