Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1711729

[PATCH 3.18 06/16] USB: hcd: Mark secondary HCD as dead if the primary one died

From Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Newsgroups linux.kernel
Subject [PATCH 3.18 06/16] USB: hcd: Mark secondary HCD as dead if the primary one died
Date 2017-08-15 04:00 +0200
Message-ID <uezjc-3jP-9@gated-at.bofh.it> (permalink)
References <ueyGu-35K-19@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


3.18-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

commit cd5a6a4fdaba150089af2afc220eae0fef74878a upstream.

Make usb_hc_died() clear the HCD_FLAG_RH_RUNNING flag for the shared
HCD and set HCD_FLAG_DEAD for it, in analogy with what is done for
the primary one.

Among other thigs, this prevents check_root_hub_suspended() from
returning -EBUSY for dead HCDs which helps to work around system
suspend issues in some situations.

This actually fixes occasional suspend failures on one of my test
machines.

Suggested-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/core/hcd.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -2398,6 +2398,8 @@ void usb_hc_died (struct usb_hcd *hcd)
 	}
 	if (usb_hcd_is_primary_hcd(hcd) && hcd->shared_hcd) {
 		hcd = hcd->shared_hcd;
+		clear_bit(HCD_FLAG_RH_RUNNING, &hcd->flags);
+		set_bit(HCD_FLAG_DEAD, &hcd->flags);
 		if (hcd->rh_registered) {
 			clear_bit(HCD_FLAG_POLL_RH, &hcd->flags);
 

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 3.18 00/16] 3.18.66-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 03:20 +0200
  [PATCH 3.18 01/16] mm: ratelimit PFNs busy info message Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 03:20 +0200
  [PATCH 3.18 11/16] usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 06/16] USB: hcd: Mark secondary HCD as dead if the primary one died Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 08/16] iio: light: tsl2563: use correct event code Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 05/16] usb: musb: fix tx fifo flush handling again Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 14/16] pnfs/blocklayout: require 64-bit sector_t Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 03/16] USB: serial: option: add D-Link DWM-222 device ID Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 07/16] staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL read Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 15/16] pinctrl: sunxi: add a missing function of A10/A20 pinctrl driver Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 10/16] USB: Check for dropped connection before switching to full speed Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 04/16] USB: serial: cp210x: add support for Qivicon USB ZigBee dongle Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 16/16] pinctrl: samsung: Remove bogus irq_[un]mask from resource management Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
  [PATCH 3.18 12/16] usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:10 +0200
  [PATCH 3.18 02/16] fuse: initialize the flock flag in fuse_file on allocation Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:10 +0200
  [PATCH 3.18 13/16] iio: adc: vf610_adc: Fix VALT selection value for REFSEL bits Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:10 +0200
  Re: [PATCH 3.18 00/16] 3.18.66-stable review Guenter Roeck <linux@roeck-us.net> - 2017-08-15 12:50 +0200
  Re: [PATCH 3.18 00/16] 3.18.66-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2017-08-15 20:10 +0200

csiph-web