Re: [PATCH v10 1/5] serdev: Make .remove in struct serdev_device_driver optional

From: Sebastian Reichel
Date: Sat Nov 04 2017 - 13:06:26 EST


Hi Greg,

On Sat, Nov 04, 2017 at 12:24:31PM +0100, Greg Kroah-Hartman wrote:
> On Tue, Oct 31, 2017 at 09:36:52AM -0700, Andrey Smirnov wrote:
> > Using devres infrastructure it is possible to write a serdev driver
> > that doesn't have any code that needs to be called as a part of
> > .remove. Add code to make .remove optional.
>
> What about manual unbind from userspace through sysfs? You need to have
> a remove function. All drivers need that, to not have it is pretty lazy :)

Resources,that have been requested via devres are free'd by the
devres framework after the driver specific remove function. This
also works for manual unbind.

If *all* driver resources are allocated using devres, you will end
up with an empty remove function. In that case it makes sense to
remove it completly. This is what quite a few (mainline) i2c and
spi drivers actually do.

-- Sebastian

Attachment: signature.asc
Description: PGP signature