Messages in this thread | | | Date | Wed, 8 Jan 2014 10:48:06 -0500 (EST) | From | Alan Stern <> | Subject | Re: [RFC/PATCH] usb/xhci: avoid kernel panic on xhci_suspend() |
| |
On Tue, 7 Jan 2014, Greg KH wrote:
> On Tue, Jan 07, 2014 at 05:44:26PM -0800, David Cohen wrote: > > From: jianqian <jianqiang.tang@intel.com> > > > > There is a possible kernel panic faced on xhci_suspend(). > > Due to kernel modified the hub autosupend_delay to 0s, after usb1 root > > hub finishes initialization, it will trigger runtime_suspend and then > > it will trigger xhci runtime suspend. But at that time, if > > xhci->shared_hcd is still doing initialization, it is possible to face > > null pointer kernel panic in xhci_suspend() function. > > > > This patch checks if xhci->shared_hcd is null to avoid panic. > > That sounds like this is a race that should be fixed properly, not just > papered over, right?
That was my reaction too. The best way to solve the problem is to prevent the USB-2 root hub from suspending until after the USB-3 root hub has been registered.
Alan Stern
| |