lkml.org 
[lkml]   [2009]   [Dec]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT PATCH] USB patches for 2.6.33-git
Linus Torvalds wrote:
>
> On Mon, 14 Dec 2009, Russ Dill wrote:
>> From: Russ Dill <Russ.Dill@gmail.com>
>> Date: Wed, 18 Nov 2009 10:31:27 -0700
>> Subject: [PATCH] Close usb_find_interface race v3
> [...]
>
> Ok, patch looks good to me.
>
> However, now I just wonder whether this re-introduces the original race.
>
> In the original race description:
>
>> USB drivers that create character devices call usb_register_dev in their
>> probe function. This associates the usb_interface device with that minor
>> number and creates the character device and announces it to the world.
>> However, the driver's probe function is called before the new
>> usb_interface is added to the driver's klist_devices.
>
> and now we obviously no longer care about that klist_devices thing any
> more, but we _do_ care about 'dev->driver'.
>
> Has that been set by the time the driver's probe function is called? Or
> are we now going to have the same situation as before the original patch?
>
> [ That obviously always worked for my printer situation, but I'm just
> wondering if this patch actually now helps whatever problem the original
> patch was supposed to help? ]
>
> Somebody who knows the USB driver binding code better than I do should
> look at this. Greg?
>

I'll test tomorrow be sure, but It seems fine. really_probe in
drivers/base/dd.c is setting dev->driver before calling drv->probe.
driver_bound is called after drv->prove which adds the device to the
driver klist_devices.

[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2009-12-15 07:15    [W:0.111 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site