Re: [GIT PATCH] USB patches for 2.6.33-git

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

 



Linus Torvalds wrote:
> 
> On Mon, 14 Dec 2009, Russ Dill wrote:
>> From: Russ Dill <Russ.Dill@xxxxxxxxx>
>> 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.

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux