On 1 May 2018 at 20:53, Eitan Adler <li...@eitanadler.com> wrote: > Hi all, > > I am noticing consistently high IRQ rates on xhci0 > > example from vmstat -i right now: > irq259: xhci0 2222153 1876 > > and this is not the highest I've seen. > > My understanding is that a rate of 1876/s is insane for USB devices. > Any suggestions of what I can do to debug? > > Things I've tried: > - disabling MSI interrupts > - disabling MSI-X interrupts > - powering off all usb devices using usbconfig > - unplugging all USB devices > > One thing of note: > My mobo has a broken USB connector resulting in one of the two front > USB-3 ports not working. I'm guessing this is related but I'd like > some confirmation and/or a way to bypass the issue in software.
with insane debugging enabled: ... [3542] xhci_check_transfer: slot=1 epno=6 stream=256 remainder=0 status=1 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x0000000099c01480 == (0x000000005df39980 .. 0x000000005df39aa0) [3542] xhci_check_transfer: Checking if 0x0000000099c01480 == (0x0000000099c01480 .. 0x0000000099c015a0) [3542] xhci_check_transfer: New remainder: 0 [3542] xhci_check_transfer: Following next TD [3542] xhci_interrupt_poll: event[103] = 32 (0x00000001167f8790 0x01000000 0x01078001) [3542] xhci_check_transfer: slot=1 epno=7 stream=256 remainder=0 status=1 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x00000001167f8790 == (0x000000005df7b980 .. 0x000000005df7baa0) [3542] xhci_check_transfer: Checking if 0x00000001167f8790 == (0x00000001167f8600 .. 0x00000001167f8720) [3542] xhci_interrupt_poll: event[104] = 32 (0x00000001167f8600 0x0d000031 0x01078001) [3542] xhci_check_transfer: slot=1 epno=7 stream=3328 remainder=49 status=13 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x00000001167f8600 == (0x000000005df7b980 .. 0x000000005df7baa0) [3542] xhci_check_transfer: Checking if 0x00000001167f8600 == (0x00000001167f8600 .. 0x00000001167f8720) [3542] xhci_check_transfer: New remainder: 49 [3542] xhci_check_transfer: TD has short pkt [3542] xhci_interrupt: real interrupt (status=0x00000008) [3542] xhci_interrupt_poll: event[105] = 32 (0x0000000099c01490 0x01000000 0x01068001) [3542] xhci_check_transfer: slot=1 epno=6 stream=256 remainder=0 status=1 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x0000000099c01490 == (0x000000005df39980 .. 0x000000005df39aa0) [3542] xhci_check_transfer: Checking if 0x0000000099c01490 == (0x0000000099c01300 .. 0x0000000099c01420) [3542] xhci_interrupt_poll: event[106] = 32 (0x0000000099c01300 0x01000000 0x01068001) [3542] xhci_check_transfer: slot=1 epno=6 stream=256 remainder=0 status=1 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x0000000099c01300 == (0x000000005df39980 .. 0x000000005df39aa0) [3542] xhci_check_transfer: Checking if 0x0000000099c01300 == (0x0000000099c01300 .. 0x0000000099c01420) [3542] xhci_check_transfer: New remainder: 0 [3542] xhci_check_transfer: Following next TD [3542] xhci_interrupt_poll: event[107] = 32 (0x00000001167f8610 0x01000000 0x01078001) [3542] xhci_check_transfer: slot=1 epno=7 stream=256 remainder=0 status=1 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x00000001167f8610 == (0x000000005df7b980 .. 0x000000005df7baa0) [3542] xhci_check_transfer: Checking if 0x00000001167f8610 == (0x00000001167f8480 .. 0x00000001167f85a0) [3542] xhci_interrupt_poll: event[108] = 32 (0x00000001167f8480 0x0d000031 0x01078001) [3542] xhci_check_transfer: slot=1 epno=7 stream=3328 remainder=49 status=13 [3542] xhci_check_transfer: stream_id=0 [3542] xhci_check_transfer: Checking if 0x00000001167f8480 == (0x000000005df7b980 .. 0x000000005df7baa0) [3542] xhci_check_transfer: Checking if 0x00000001167f8480 == (0x00000001167f8480 .. 0x00000001167f85a0) [3542] xhci_check_transfer: New remainder: 49 [3542] xhci_check_transfer: TD has short pkt .... -- Eitan Adler _______________________________________________ freebsd-usb@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-usb To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"