> From: Jason Gunthorpe <jgg@xxxxxxxx> > Sent: Wednesday, August 31, 2022 8:23 AM > > On Sun, Aug 28, 2022 at 01:10:32AM +0800, Kevin Tian wrote: > > From: Yi Liu <yi.l.liu@xxxxxxxxx> > > > > Export symbol of vfio_release_device_set() so fsl-mc @init can handle > > the error path cleanly instead of assuming certain vfio core API can > > help release device_set afterwards. > > I think you should leave it as is, the "device_set" cleanup is just > something handled completely internally to vfio > > If ops->init fails then we expect the core code to clean the > device_set, and it does because it calls vfio_init_device() already. > > Having a single weirdly placed release in the driver is pretty > confusing, IMHO. > I considered both. In the end I chose the current way being it's clearer if just looking at @init. But yes having a release called by driver is also confusing. Probably having a pair of assign/deassign helpers is more clearer, but I'll not continue this path for unnecessary complexity. So I'll leave it as is and add a comment to clarify it.