[PATCH v2 1/6] Add ancillary bus support
Ertman, David M
david.m.ertman at intel.com
Thu Oct 8 20:13:15 CEST 2020
> -----Original Message-----
> From: Parav Pandit <parav at nvidia.com>
> Sent: Thursday, October 8, 2020 10:35 AM
> To: Ertman, David M <david.m.ertman at intel.com>; Pierre-Louis Bossart
> <pierre-louis.bossart at linux.intel.com>; Leon Romanovsky
> <leon at kernel.org>
> Cc: alsa-devel at alsa-project.org; parav at mellanox.com; tiwai at suse.de;
> netdev at vger.kernel.org; ranjani.sridharan at linux.intel.com;
> fred.oh at linux.intel.com; linux-rdma at vger.kernel.org;
> dledford at redhat.com; broonie at kernel.org; Jason Gunthorpe
> <jgg at nvidia.com>; gregkh at linuxfoundation.org; kuba at kernel.org; Williams,
> Dan J <dan.j.williams at intel.com>; Saleem, Shiraz
> <shiraz.saleem at intel.com>; davem at davemloft.net; Patil, Kiran
> <kiran.patil at intel.com>
> Subject: RE: [PATCH v2 1/6] Add ancillary bus support
>
>
>
> > From: Ertman, David M <david.m.ertman at intel.com>
> > Sent: Thursday, October 8, 2020 10:24 PM
>
> > > From: Parav Pandit <parav at nvidia.com>
> > > Sent: Wednesday, October 7, 2020 9:56 PM
>
>
> > > /**
> > > * ancillar_device_register() - register an ancillary device
> > > * NOTE: __never directly free @adev after calling this function, even
> > > if it returned
> > > * an error. Always use ancillary_device_put() to give up the
> > > reference initialized by this function.
> > > * This note matches with the core and caller knows exactly what to be
> > done.
> > > */
> > > ancillary_device_register()
> > > {
> > > device_initialize(&adev->dev);
> > > if (!dev->parent || !adev->name)
> > > return -EINVAL;
> > > if (!dev->release && !(dev->type && dev->type->release)) {
> > > /* core is already capable and throws the warning when
> > release
> > > callback is not set.
> > > * It is done at drivers/base/core.c:1798.
> > > * For NULL release it says, "does not have a release()
> > function, it
> > > is broken and must be fixed"
> > > */
> > > return -EINVAL;
> > > }
> > That code is in device_release(). Because of this check we will never hit
> that
> > code.
> >
> > We either need to leave the error message here, or if we are going to rely
> on
> > the core to find this condition at the end of the process, then we need to
> > completely remove this check from the registration flow.
> >
> Yes. Since the core is checking it, ancillary bus doesn't need to check here and
> release callback check can be removed.
Will do
>
> > -DaveE
More information about the Alsa-devel
mailing list