it appears that uhci is causing spurious ehci interrupts, or at least
ehci/uhci are causing each other to ring.  i haven't tracked down
the fundamental issue yet.  but this appears to be related to the
ehci/uhci subordinate issue, and the Callmine setting.

hacking details for the interested:

when i limit one particular machine to 5 uhci controllers, everything
is fine.  one suspects that this is luck due to whatever it is that triggers
the excitement being connected to the 6th controller.  the 6th controller
does indeed share an interrupt with ehci.  if it were enabled it would be
70.1/10.

(nix uses vector.mach notation for /dev/irqalloc.  since the amd64
port of the nix kernel has settled on physical interrupt addressing,
a machine may have nmach*nvector available vectors.)

juno# grep usb /dev/irqalloc
       68.0          15                    0                    0 ioapic   
usbuhci
       68.1           7                    0                    0 ioapic   
usbuhci
       68.2          11                    0                    0 ioapic   
usbuhci
       68.2          11                    0                    0 ioapic   
usbuhci
>      68.3           6                    2                11136 ioapic   
> usbehci
>      68.3           6                    0                    0 ioapic   
> usbuhci
       70.1          10                    0                    0 ioapic   
usbehci

- erik

Reply via email to