staging: usbip: vhci_hcd: fixed suspend-resume loop
authornavin patidar <navinp@cdac.in>
Thu, 6 Sep 2012 11:19:50 +0000 (16:49 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Sep 2012 16:31:54 +0000 (09:31 -0700)
commit107f04bbce331bf622b901ccec34a124e6b78584
treef5f0edba40490e5ef2107957f48d2d832cf87fcb
parent236742de5bfd2af772004ec829518856ff12b469
staging: usbip: vhci_hcd: fixed suspend-resume loop

USB autosuspend suspends vhci_hcd. In this process hcd_bus_suspend gets
executed which puts vhci_hcd in suspend state and calls vhci_hub_status.
vhci_hub_status function checks hub state and if it is in suspend state,
usb_hcd_resume_root_hub gets executed which resumes hub and if hub is
idle, again autosuspend puts it in suspend state and this goes on.

vhci_hub_status should resume hub only when hub port is in suspend state
and hub port status has changed.

Signed-off-by: navin patidar <navinp@cdac.in>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/usbip/vhci_hcd.c