RE: [PATCH v2] vfio/cdx: add support for CDX bus

From: Gupta, Nipun
Date: Mon Apr 17 2023 - 09:21:28 EST


[AMD Official Use Only - General]



> -----Original Message-----
> From: Jason Gunthorpe <jgg@xxxxxxxx>
> Sent: Monday, April 17, 2023 6:49 PM
> To: Alex Williamson <alex.williamson@xxxxxxxxxx>
> Cc: Gupta, Nipun <Nipun.Gupta@xxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx;
> kvm@xxxxxxxxxxxxxxx; masahiroy@xxxxxxxxxx; nathan@xxxxxxxxxx;
> ndesaulniers@xxxxxxxxxx; nicolas@xxxxxxxxx; git (AMD-Xilinx) <git@xxxxxxx>;
> Anand, Harpreet <harpreet.anand@xxxxxxx>; Jansen Van Vuuren, Pieter
> <pieter.jansen-van-vuuren@xxxxxxx>; Agarwal, Nikhil
> <nikhil.agarwal@xxxxxxx>; Simek, Michal <michal.simek@xxxxxxx>
> Subject: Re: [PATCH v2] vfio/cdx: add support for CDX bus
>
> Caution: This message originated from an External Source. Use proper caution
> when opening attachments, clicking links, or responding.
>
>
> On Fri, Apr 14, 2023 at 03:36:14PM -0600, Alex Williamson wrote:
>
> > > +static int vfio_cdx_init_device(struct vfio_device *core_vdev)
> > > +{
> > > + struct vfio_cdx_device *vdev =
> > > + container_of(core_vdev, struct vfio_cdx_device, vdev);
> > > + struct cdx_device *cdx_dev = to_cdx_device(core_vdev->dev);
> > > +
> > > + vdev->cdx_dev = cdx_dev;
> > > + vdev->dev = &cdx_dev->dev;
> >
> > Both of these seem trivial to factor out of this patch, cdx_device is
> > always available via to_cdx_device(core_vdev->dev) and the struct
> > device is always available via core_vdev->dev. vdev->dev isn't even
> > used anywhere yet. Both the init and release functions here could be
> > dropped afaict.
>
> Yes please, I have a series someplace that gets rid of all these
> redundent ->devs we keep around everwhere.
>
> to_cdx_device(core_vdev->dev) is a good solution, maybe with a static
> inline.

Agree, we have already rolled out v3 which has this change i.e using
to_cdx_dev(core_vdev->dev) instead of storing these again.

Thanks,
Nipun

>
> Jason