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.
Alan Stern
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html