Re: [PATCH 04/29] drivers: base: add notifier for failed driver bind

From: Marek Szyprowski
Date: Tue Aug 26 2014 - 02:30:14 EST


Hello,

On 2014-08-25 23:18, Joerg Roedel wrote:
On Tue, Aug 05, 2014 at 12:47:32PM +0200, Marek Szyprowski wrote:
+ if (failed && dev->bus)
+ blocking_notifier_call_chain(&dev->bus->p->bus_notifier,
+ BUS_NOTIFY_DRVBIND_FAILED, dev);
+
Why can't you just use the notifier for BUS_NOTIFY_UNBIND_DRIVER or
BUS_NOTIFY_UNBOUND_DRIVER when something goes wrong in driver
initialization?

Hmmm, you might be right. BUS_NOTIFY_UNBIND_DRIVER event happens before unbinding
the driver, but BUS_NOTIFY_UNBOUND_DRIVER is called when driver remove has been
finished, so it can be considered as a symmetrical pair for BUS_NOTIFY_BIND_DRIVER.
Driver which registered bus notifiers is mainly interested in doing right cleanup,
so the code executed for IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER and
IOMMU_GROUP_NOTIFY_DRVBIND_FAILED is same.

I will remove this additional event and simply add a call to
BUS_NOTIFY_UNBOUND_DRIVER event when driver probe fails.

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/