On Mon, 15 Apr 2019, Jesse Hathaway wrote: > On Sat, Apr 6, 2019 at 10:32 AM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > Well, at least that's forward progress. I don't know what pstore is or > > what connection it has to the USB subsystem. Does the machine hang > > similarly if you boot without the Comtrol PCI card present? > > Yes the box boots fine when the Comtrol PCI card is *not* present. > > > For that matter, what happens if you remove EHCI from the kernel > > configuration completely? > > If I remove USB support, the box still hangs after registering the pstore, but > if I remove pstore support and APEI support from the kernel then the box boots > without issue. > > > As for how the PCI card affects the USB handoff, it depends on how the > > BIOS behaves. Normally the BIOS will take control of all the available > > EHCI controllers during bootup (so that it can use them to communicate > > with a USB keyboard or mouse), including controllers on add-on PCI > > cards as well as those on the motherboard. When the kernel starts up, > > it tries to take ownership of the controllers away from the BIOS > > (that's the handoff) so that Linux can use them. However, if the BIOS > > was never tested for handoff of USB controllers on add-on PCI cards, it > > could easily have a bug that would crash the machine. > > The Comtrol card provides 32 serial ports, via a breakout box, but it has > no USB functionality, which was why I was surprised that its presence > somehow breaks the USB hand off. Well, I am completely mystified. Nor do I understand how the commits you identified could be related, although maybe the relationship is very indirect. Whatever the source of the problem, I don't think you're going to find it by looking at the USB code. Perhaps the early initialization of the functions that _are_ present on the Comtrol card somehow messes up other parts of the system. Alan Stern