On 08/23/2012 08:33 PM, Alan Stern wrote:
> On Thu, 23 Aug 2012, Marc Kleine-Budde wrote:
> 
>> Otherwise the module's refcount is 0 and it's possible to unload the module,
>> even if the phy is in use.
> 
>> @@ -139,8 +140,10 @@ EXPORT_SYMBOL(devm_usb_put_phy);
>>   */
>>  void usb_put_phy(struct usb_phy *x)
>>  {
>> -    if (x)
>> +    if (x) {
>>              put_device(x->dev);
>> +            module_put(x->dev->driver->owner);
>> +    }
> 
> You musn't dereference x->dev after calling put_device().  Instead, 
> save x->dev->driver->owner beforehand.

Will fix.

Tnx, Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to