[dpdk-dev] [PATCH v2 3/4] net/mlx5: add free on completion queue
Slava Ovsiienko
viacheslavo at mellanox.com
Thu Jan 9 16:22:32 CET 2020
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit at intel.com>
> Sent: Thursday, January 9, 2020 17:12
> To: Slava Ovsiienko <viacheslavo at mellanox.com>; dev at dpdk.org
> Cc: Matan Azrad <matan at mellanox.com>; Raslan Darawsheh
> <rasland at mellanox.com>; Ori Kam <orika at mellanox.com>
> Subject: Re: [dpdk-dev] [PATCH v2 3/4] net/mlx5: add free on completion
> queue
>
> On 1/9/2020 10:56 AM, Viacheslav Ovsiienko wrote:
> > The new software manged entity is introduced in Tx datapath
> > - free on completion queue. This queue keeps the information how many
> > buffers stored in elts array must freed on send comletion. Each
> > element of the queue contains transmitting descriptor index to be in
> > synch with completion entries (in debug build only) and the index in
> > elts array to free buffers.
> >
> > Signed-off-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
> > Acked-by: Matan Azrad <matan at mellanox.com>
>
> <...>
>
> > @@ -297,6 +297,11 @@ struct mlx5_txq_data {
> > struct mlx5_mr_ctrl mr_ctrl; /* MR control descriptor. */
> > struct mlx5_wqe *wqes; /* Work queue. */
> > struct mlx5_wqe *wqes_end; /* Work queue array limit. */
> > +#ifdef NDEBUG
> > + uint32_t *fcqs; /* Free completion queue. */ #else
> > + uint32_t *fcqs; /* Free completion queue (debug extended). */ #endif
>
> Why is the #ifdef required?
It is a misprint, in non-debug version it should be "uint16_t*" to save some memory.
Thanks for the pointing out, will fix.
With best regards, Slava
More information about the dev
mailing list