Messages in this thread | | | Date | Fri, 30 Jan 2009 11:05:55 +0100 | From | Cornelia Huck <> | Subject | Re: [PATCH] driver core: remove polling for driver_probe_done(v2) |
| |
On Fri, 30 Jan 2009 10:31:42 +0800, tom.leiming@gmail.com wrote:
> /** > + * driver_wait_probe_done_and_dev_appear > + * wait until the probe sequence is finished _and_ the dev @name appears. > + * > + */ > +void driver_wait_probe_done_and_dev_appear(char *name) > +{ > + pr_debug("%s: probe_count = %d\n", __func__, > + atomic_read(&probe_count)); > + > + wait_event(probe_waitqueue, (atomic_read(&probe_count) == 0) && > + name_to_dev_t(name));
probe_waitqueue is only woken at the end of really_probe(), not when whatever needs to be done to make the device available is done...
> +} > +/** > * driver_probe_device - attempt to bind device & driver together > * @drv: driver to bind a device to > * @dev: device to try to bind to the driver
| |