On Wed, Oct 08, 2014 at 01:58:17PM +0800, Peter Chen wrote: > It is safe to call notify disconnect when the usb core > thinks the device is disconnected. > > This commit also fixes one bug found at below situation: > we have not enabled usb wakeup, we do system suspend when > there is an usb device at the port, after suspend, we plug out > the usb device, then plug in device again. At that time, > the nofity disconnect was not called at current code, as > the controller doesn't know the usb device was disconnected > during the suspend, but USB core knows the port has changed > during that periods. > > So to fix this problem, and let the usb core call notify disconnect. > > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx> > --- > drivers/usb/core/hub.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c > index d481c99..f3d1671 100644 > --- a/drivers/usb/core/hub.c > +++ b/drivers/usb/core/hub.c > @@ -4617,8 +4617,7 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, > > /* Disconnect any existing devices under this port */ > if (udev) { > - if (hcd->phy && !hdev->parent && > - !(portstatus & USB_PORT_STAT_CONNECTION)) > + if (hcd->phy && !hdev->parent) > usb_phy_notify_disconnect(hcd->phy, udev->speed); > usb_disconnect(&port_dev->child); > } Doesn't apply :( -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html