Re: [Patch 3/3] Driver core: Per-subsystem multithreaded probing.
From: Cornelia Huck
Date: Mon Oct 16 2006 - 13:03:51 EST
On Mon, 16 Oct 2006 11:56:29 -0400 (EDT),
Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> You would only be changing it for the multithreaded path, which itself is
> very new. But this is all hypothetical anyway...
I think we're talking about the same thing :)
> So the question is what do do if someone calls device_register() or
> device_add() with dev->driver set. If everything succeeds except for
> creation of the symlinks, should the device remain registered? The driver
> core has been vacillating about this recently. I'm not sure what the
> right answer is.
If dev->driver has not been set and symlink creation failed, we'll end
up with an unbound but registered device. Maybe the same should happen
if dev->driver had been set before (register the device but reset
dev->driver to NULL)?
> However the kerneldoc for device_attach() should be updated to mention
> that when multithreaded probing is used, a driver might end up getting
> bound even though the return value is 0.
Agreed.
> P.S.: If you initialize probe_task to ERR_PTR(-ENOMEM) or something
> similar, then you could eliminate one of the calls to bus_for_each_drv()
> in device_attach().
I'll do a new patch series tomorrow.
--
Cornelia Huck
Linux for zSeries Developer
Tel.: +49-7031-16-4837, Mail: cornelia.huck@xxxxxxxxxx
-
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/