[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BY5PR12MB43223FE33A906FF4AA0C46A4DC0B0@BY5PR12MB4322.namprd12.prod.outlook.com>
Date: Thu, 8 Oct 2020 17:35:04 +0000
From: Parav Pandit <parav@...dia.com>
To: "Ertman, David M" <david.m.ertman@...el.com>,
Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>,
Leon Romanovsky <leon@...nel.org>
CC: "alsa-devel@...a-project.org" <alsa-devel@...a-project.org>,
"parav@...lanox.com" <parav@...lanox.com>,
"tiwai@...e.de" <tiwai@...e.de>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"ranjani.sridharan@...ux.intel.com"
<ranjani.sridharan@...ux.intel.com>,
"fred.oh@...ux.intel.com" <fred.oh@...ux.intel.com>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
"dledford@...hat.com" <dledford@...hat.com>,
"broonie@...nel.org" <broonie@...nel.org>,
Jason Gunthorpe <jgg@...dia.com>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"kuba@...nel.org" <kuba@...nel.org>,
"Williams, Dan J" <dan.j.williams@...el.com>,
"Saleem, Shiraz" <shiraz.saleem@...el.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"Patil, Kiran" <kiran.patil@...el.com>
Subject: RE: [PATCH v2 1/6] Add ancillary bus support
> From: Ertman, David M <david.m.ertman@...el.com>
> Sent: Thursday, October 8, 2020 10:24 PM
> > From: Parav Pandit <parav@...dia.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.
> -DaveE
Powered by blists - more mailing lists