Re: [PATCH v3 1/1] xhci: Prevent runtime pm from autosuspending during initialization

From: Greg KH
Date: Tue Mar 04 2014 - 12:03:23 EST


On Tue, Mar 04, 2014 at 01:50:55PM +0200, Mathias Nyman wrote:
> On 03/03/2014 08:37 PM, Greg KH wrote:
> >On Mon, Mar 03, 2014 at 07:30:17PM +0200, Mathias Nyman wrote:
> >>xHCI driver has its own pci probe function that will call usb_hcd_pci_probe
> >>to register its usb-2 bus, and then continue to manually register the
> >>usb-3 bus. usb_hcd_pci_probe does a pm_runtime_put_noidle at the end and
> >>might thus trigger a runtime suspend before the usb-3 bus is ready.
> >
> >What is the result if that happens?
>
> Crashes. Null pointer dereference in xhci_suspend() when touching
> xhci->shared_hcd before it's initialized. More info here:
>
> http://marc.info/?l=linux-usb&m=138914518219334&w=2
>
> >
> >Is this a regression from 3.13? Or something new for 3.14?
> >
>
> According to reporter its been around since 3.7
>
> commit 596d789a211d134dc5f94d1e5957248c204ef850
> USB: set hub's default autosuspend delay as 0
>
> But nobody else than the reporter is able to trigger it.

Then it can wait for 3.15-rc1, and then go back to the stable trees at
that time, right? I'd prefer that as it's not a regression and not
common.

> >What platform(s) are affected by this?
>
> David, the reporter (added to cc), mentioned
> "This bug happened in a platform with 1 usb3 host controller + 1 usb3 OTG
> controller" run by some Intel internal group
>
> http://marc.info/?l=linux-usb&m=138915969822029&w=2

That sounds like a "not shipping platform" to me :)

Please resend this with patches for 3.15-rc1.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/