[dpdk-dev] [PATCH v1 27/72] common/mlx5/windows: add OS alloc/dealloc pd

Tal Shnaiderman talshn at nvidia.com
Sat Nov 14 22:51:27 CET 2020


> Subject: Re: [dpdk-dev] [PATCH v1 27/72] common/mlx5/windows: add OS
> alloc/dealloc pd
> 
> On Tue, Oct 27, 2020 at 11:22:50PM +0000, Ophir Munk wrote:
> > From: Tal Shnaiderman <talshn at nvidia.com>
> >
> > Implement Windows API mlx5_os_alloc_pd() and mlx5_os_dealloc_pd().
> > They are equivalent to the Linux implementation.
> >
> > Signed-off-by: Tal Shnaiderman <talshn at nvidia.com>
> > Acked-by: Matan Azrad <matan at nvidia.com>
> > ---
> >  drivers/common/mlx5/rte_common_mlx5_exports.def |  3 +-
> >  drivers/common/mlx5/windows/mlx5_common_os.c    | 47
> +++++++++++++++++++++++++
> >  drivers/common/mlx5/windows/mlx5_common_os.h    |  3 ++
> >  drivers/common/mlx5/windows/mlx5_win_ext.h      |  6 ++++
> >  4 files changed, 58 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/common/mlx5/rte_common_mlx5_exports.def
> > b/drivers/common/mlx5/rte_common_mlx5_exports.def
> > + * @return
> > + *    The mlx5_pd if pd is valid, NULL and errno otherwise.
> > + */
> > +void *
> > +mlx5_os_alloc_pd(void *ctx)
> > +{
> > +	struct mlx5_pd *ppd =  mlx5_malloc(MLX5_MEM_ZERO,
> > +		sizeof(struct mlx5_pd), 0, SOCKET_ID_ANY);
> > +	if (!ppd)
> > +		return NULL;
> > +
> > +	struct mlx5_devx_obj *obj = mlx5_devx_cmd_alloc_pd(ctx);
> > +	if (!obj)
> 
> Free ppd here, to avoid memory leak.

Right, will do in v2.

> 
> > +		return NULL;
> > +
> > +	ppd->obj = obj;
> > +	ppd->pdn = obj->id;
> > +	ppd->devx_ctx = ctx;
> > +	return ppd;
> > +}
> > +


More information about the dev mailing list