RE: [PATCH 1/3] driver core: enable drivers to use deferred probe from init

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> +static int __driver_probe_device(struct device_driver *drv, struct
> +device *dev) {
> +	if (drv->delay_probe && !dev->init_delayed_probe) {
> +		dev_info(dev, "Driver %s requests probe deferral on init\n",
> +			 drv->name);
> +		dev->init_delayed_probe = true;
> +		driver_deferred_probe_add(dev);
> +		return -EPROBE_DEFER;
> +	}
> +
> +	return really_probe(dev, drv);
> +}

Perhaps this is a silly question, but what guarantees that the deferred probe
list will actually be triggered, e.g., in case the delayed device is the last device
in the system?

[From drivers/base/dd.c  - "A successful driver probe will trigger moving all
devices from the pending to the active list so that the workqueue will
eventually retry them]

<<attachment: winmail.dat>>


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux