On Tue, 9 Sep 2014 14:29:11 -0400 Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > On Tue, 9 Sep 2014, Joe Lawrence wrote: > > > On Tue, 9 Sep 2014 11:30:24 -0400 > > Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > > > > On Tue, 9 Sep 2014, Joe Lawrence wrote: > > > > > > In summary, khubd has initialized the usb_device maxchild to 8 and > > > > provided backing-store for the usb_hub ports[] array. However, before > > > > it gets to fill in pointers for each port[] entry, the device is removed > > > > and the hotplug driver issues a pci_stop_bus_device. This removal > > > > percolates all the way down to ehci_irq and usb_hc_died. When that goes > > > > to mark the device as not attached, it expects that the ports[] pointers > > > > are valid... kaboom. > > > > > > This has been fixed in the mainline kernel by commit d8521afe3586, > > > which is part of a large series involving port-power control for USB-3 > > > ports. You may want to apply just the portion that is relevant to this > > > problem, namely, have hub_configure store the maxchild value in a > > > local variable and don't assign it to hdev->maxchild until the port > > > devices have safely been created. After applying the maxchild changes to hub_configure from commit d8521afe3586, these crashes did indeed stop occurring. Thanks again, -- Joe -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html