On Tue, 05 Dec 2006 16:26:11 +0100,
Marcel Holtmann <[EMAIL PROTECTED]> wrote:

[sorry about the late reply, but I've been on vacation & offline]

> I was checking why device_move() fails and it seems that the check for
> is_registered is the problem here.
> 
>         if (!device_is_registered(dev)) {
>                 error = -EINVAL;
>                 goto out;
>         }
> 
> The ACL link has been attached to the Bluetooth bus, but for some reason
> it still thinks that it is unregistered. Is this check really needed. I
> think it should be possible to also move devices that are not part of a
> bus, yet. And removing that check makes it work for me.

Hm, device_is_registered() is always false for devices not belonging to
a bus. I'll remove that check.

> > > > > And shouldn't device_move(dev, NULL) re-attach it to the virtual 
> > > > > device
> > > > > tree instead of failing?
> > > >
> > > > Yes, that would be good to have.
> > >
> > > Cornelia, please fix this, because otherwise we can't detach a device
> > > from its parent. Storing the current virtual parent looks racy to me.
> >
> > You can always restore the previous "virtual" parent from the
> > information given to you in the device itself.  That is what the code
> > does when it first registers the device.
> >
> > And yes, I too think it should be fixed.
> 
> My knowledge of the driver model is still limited. Can you fix that
> quickly. This is really needed.

I'm currently working on a patch. Sorry for the delay, I hope I can get
it out today.

-- 
Cornelia Huck
Linux for zSeries Developer
Tel.: +49-7031-16-4837, Mail: [EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to