* Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine
@ 2020-12-28 11:19 Brad Campbell
2020-12-28 14:42 ` Andy Shevchenko
0 siblings, 1 reply; 4+ messages in thread
From: Brad Campbell @ 2020-12-28 11:19 UTC (permalink / raw)
To: andriy.shevchenko; +Cc: linux-usb, gregkh
G'day Andy,
Commit 306c54d0edb6ba94d39877524dddebaad7770cf2 in kernel 5.9 breaks
usb-audio on my machine.
I have a 2011 iMac with a pair of Apple Thunderbolt displays. Both Thunderbolt
displays have internal usb-audio devices. This patch causes the audio to stutter
terribly. Reverting it resolves the issue on any kernel up to and
including 5.10.3.
Booting with pci=nomsi fixes the audio issues, but causes all sorts of
other problems (like broken Thunderbolt display routing), so that's a non-starter.
The usb audio devices would appear to be on the Pericom USB controllers in the displays.
It wouldn't be the first peculiarity I've had on this machine due to the early Thunderbolt
implementation.
The issue is pretty much identical with the sound card on both monitors.
brad@bkmac:/usr/src/linux$ git bisect log
git bisect start
# good: [bcf876870b95592b52519ed4aafcf9d95999bc9c] Linux 5.8
git bisect good bcf876870b95592b52519ed4aafcf9d95999bc9c
# bad: [bbf5c979011a099af5dc76498918ed7df445635b] Linux 5.9
git bisect bad bbf5c979011a099af5dc76498918ed7df445635b
# bad: [47ec5303d73ea344e84f46660fff693c57641386] Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next
git bisect bad 47ec5303d73ea344e84f46660fff693c57641386
# bad: [8f7be6291529011a58856bf178f52ed5751c68ac] Merge tag 'mmc-v5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc
git bisect bad 8f7be6291529011a58856bf178f52ed5751c68ac
# good: [822ef14e9dc73079c646d33aa77e2ac42361b39e] Merge tag 'arm-drivers-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
git bisect good 822ef14e9dc73079c646d33aa77e2ac42361b39e
# good: [e0fc99e21e6e299673f1640105ac0c1d829c2d93] Merge tag 'for-5.9/drivers-20200803' of git://git.kernel.dk/linux-block
git bisect good e0fc99e21e6e299673f1640105ac0c1d829c2d93
# good: [dd27111e32572fdd3aaae98ba2817df6d202357a] Merge tag 'driver-core-5.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
git bisect good dd27111e32572fdd3aaae98ba2817df6d202357a
# bad: [fa56dd9152ef955bd21082c5330e4dff8621bca6] Merge tag 'usb-serial-5.9-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-next
git bisect bad fa56dd9152ef955bd21082c5330e4dff8621bca6
# good: [313da01ad524771046beddb18faffc5b3caf930f] usb: misc: sisusbvga: Move static const tables out to different include file
git bisect good 313da01ad524771046beddb18faffc5b3caf930f
# bad: [a95bdfd22076497288868c028619bc5995f5cc7f] bdc: Fix bug causing crash after multiple disconnects
git bisect bad a95bdfd22076497288868c028619bc5995f5cc7f
# good: [ef7e12078ab832c72315adcfa05e7a9498a5e109] thunderbolt: Fix old style declaration warning
git bisect good ef7e12078ab832c72315adcfa05e7a9498a5e109
# bad: [abac8a85c8196c2a098048ad78552c8b1a236c4d] usb: gadget: udc: atmel: implement .pullup callback
git bisect bad abac8a85c8196c2a098048ad78552c8b1a236c4d
# bad: [ffeb1e9e897b8d36b197275592d121c96d3bdb95] USB: Replace HTTP links with HTTPS ones
git bisect bad ffeb1e9e897b8d36b197275592d121c96d3bdb95
# bad: [1401bfe058d3ccf8867e9faf77744900c305e74e] usb: typec: Comment correction for typec_partner_register_altmode
git bisect bad 1401bfe058d3ccf8867e9faf77744900c305e74e
# bad: [306c54d0edb6ba94d39877524dddebaad7770cf2] usb: hcd: Try MSI interrupts on PCI devices
git bisect bad 306c54d0edb6ba94d39877524dddebaad7770cf2
# good: [eed3c957dd8cb794d6010137266cd91e0502c86d] Merge 5.8-rc6 into usb-next
git bisect good eed3c957dd8cb794d6010137266cd91e0502c86d
# first bad commit: [306c54d0edb6ba94d39877524dddebaad7770cf2] usb: hcd: Try MSI interrupts on PCI devices
brad@bkmac:~$ lspci -tv
-[0000:00]-+-00.0 Intel Corporation 2nd Generation Core Processor Family DRAM Controller
+-01.0-[01]--+-00.0 Advanced Micro Devices, Inc. [AMD/ATI] Blackcomb [Radeon HD 6970M/6990M]
| \-00.1 Advanced Micro Devices, Inc. [AMD/ATI] Barts HDMI Audio [Radeon HD 6790/6850/6870 / 7720 OEM]
+-02.0 Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller
+-16.0 Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1
+-1a.0 Intel Corporation 6 Series/C200 Series Chipset Family USB Universal Host Controller #5
+-1a.7 Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2
+-1b.0 Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller
+-1c.0-[02]----00.0 Broadcom Limited NetXtreme BCM57765 Gigabit Ethernet PCIe
+-1c.1-[03]----00.0 Qualcomm Atheros AR93xx Wireless Network Adapter
+-1c.2-[04]----00.0 LSI Corporation FW643 [TrueFire] PCIe 1394b Controller
+-1c.4-[05-cb]----00.0-[06-cb]--+-00.0-[07]----00.0 Intel Corporation CV82524 Thunderbolt Controller [Light Ridge 4C 2010]
| +-03.0-[08-38]--
| +-04.0-[39-69]----00.0-[3a-44]--+-00.0-[3b-3d]----00.0-[3c-3d]----03.0-[3d]--+-00.0 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
| | | +-00.1 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
| | | \-00.2 Pericom Semiconductor PI7C9X442SL USB EHCI Controller
| | +-01.0-[3e]----00.0 Broadcom Limited NetXtreme BCM57761 Gigabit Ethernet PCIe
| | +-02.0-[3f]----00.0 LSI Corporation FW643 [TrueFire] PCIe 1394b Controller
| | +-04.0-[40-43]----00.0-[41-43]--+-00.0-[42]----00.0 ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller
| | | \-01.0-[43]----00.0 ASMedia Technology Inc. ASM1062 Serial ATA Controller
| | \-05.0-[44]--
| +-05.0-[6a-9a]----00.0-[6b-72]--+-00.0-[6c-6e]----00.0-[6d-6e]----03.0-[6e]--+-00.0 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
| | | +-00.1 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
| | | \-00.2 Pericom Semiconductor PI7C9X442SL USB EHCI Controller
| | +-01.0-[6f]----00.0 Broadcom Limited NetXtreme BCM57761 Gigabit Ethernet PCIe
| | +-02.0-[70]----00.0 LSI Corporation FW643 [TrueFire] PCIe 1394b Controller
| | +-04.0-[71]--
| | \-05.0-[72]--
| \-06.0-[9b-cb]--
+-1d.0 Intel Corporation 6 Series/C200 Series Chipset Family USB Universal Host Controller #1
+-1d.7 Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1
+-1f.0 Intel Corporation Z68 Express Chipset Family LPC Controller
+-1f.2 Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller
\-1f.3 Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller
brad@bkmac:~$ lsusb -t
/: Bus 12.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M
/: Bus 11.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M
/: Bus 10.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M
/: Bus 09.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M
/: Bus 08.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/4p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
|__ Port 4: Dev 3, If 0, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 1, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 2, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 3, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 5: Dev 4, If 2, Class=Vendor Specific Class, Driver=, 480M
|__ Port 5: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 5: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 7: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 12M
/: Bus 07.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/4p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
|__ Port 4: Dev 3, If 0, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 1, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 2, Class=Audio, Driver=snd-usb-audio, 12M
|__ Port 4: Dev 3, If 3, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 5: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 5: Dev 4, If 2, Class=Vendor Specific Class, Driver=, 480M
|__ Port 5: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 7: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 12M
/: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
|__ Port 3: Dev 3, If 0, Class=Hub, Driver=hub/4p, 5000M
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/8p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 3: Dev 3, If 0, Class=Hub, Driver=hub/4p, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/3p, 480M
|__ Port 1: Dev 4, If 0, Class=Hub, Driver=hub/3p, 12M
|__ Port 1: Dev 6, If 0, Class=Vendor Specific Class, Driver=btusb, 12M
|__ Port 1: Dev 6, If 3, Class=Application Specific Interface, Driver=, 12M
|__ Port 1: Dev 6, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 1: Dev 6, If 2, Class=Vendor Specific Class, Driver=btusb, 12M
|__ Port 2: Dev 5, If 0, Class=Hub, Driver=hub/3p, 480M
|__ Port 2: Dev 8, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 2: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 3: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 2: Dev 3, If 2, Class=Vendor Specific Class, Driver=, 480M
|__ Port 2: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 2: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
/proc/interrupts - Vanilla 5.10.3 - Audio stutters terribly
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 5 0 0 0 0 0 0 0 IO-APIC 2-edge timer
9: 0 1 0 0 0 0 0 0 IO-APIC 9-fasteoi acpi
16: 0 0 0 0 367 0 0 0 IO-APIC 16-fasteoi pciehp, pciehp
17: 0 0 0 0 0 100000 0 0 IO-APIC 17-fasteoi pciehp, pciehp, pciehp
18: 0 0 0 0 0 0 100000 0 IO-APIC 18-fasteoi pciehp, pciehp
19: 0 0 0 613 0 0 0 0 IO-APIC 19-fasteoi pciehp, uhci_hcd:usb6
21: 0 0 0 0 0 0 0 0 IO-APIC 21-fasteoi uhci_hcd:usb2
22: 0 0 460 0 0 0 0 0 IO-APIC 22-fasteoi ehci_hcd:usb4
23: 0 0 0 0 0 0 600 0 IO-APIC 23-fasteoi ehci_hcd:usb1
24: 0 0 11282 0 0 0 0 0 PCI-MSI 3670016-edge thunderbolt
25: 0 0 0 11282 0 0 0 0 PCI-MSI 3670017-edge thunderbolt
60: 0 0 0 0 3 0 0 0 PCI-MSI 2097152-edge firewire_ohci
61: 0 0 0 0 0 8525 0 0 PCI-MSI 512000-edge ahci[0000:00:1f.2]
62: 0 0 0 0 0 0 0 0 PCI-MSI 35127296-edge ahci[0000:43:00.0]
63: 0 3 0 0 0 0 0 0 PCI-MSI 33030144-edge firewire_ohci
64: 0 0 205 0 0 0 0 0 PCI-MSI 34603008-edge xhci_hcd
65: 0 0 0 0 0 0 0 0 PCI-MSI 34603009-edge xhci_hcd
66: 0 0 0 0 0 0 0 0 PCI-MSI 34603010-edge xhci_hcd
67: 0 0 0 0 0 0 0 0 PCI-MSI 34603011-edge xhci_hcd
68: 0 0 0 0 0 0 0 0 PCI-MSI 34603012-edge xhci_hcd
69: 0 0 0 0 0 0 0 0 PCI-MSI 34603013-edge xhci_hcd
70: 0 0 0 0 0 0 0 0 PCI-MSI 34603014-edge xhci_hcd
71: 0 0 0 0 0 0 0 0 PCI-MSI 34603015-edge xhci_hcd
72: 0 0 0 0 0 0 0 0 PCI-MSI 31985664-edge ehci_hcd:usb7
73: 0 0 0 0 3 0 0 0 PCI-MSI 58720256-edge firewire_ohci
74: 0 0 0 0 0 0 0 0 PCI-MSI 57675776-edge ehci_hcd:usb8
75: 0 0 0 0 0 0 0 0 PCI-MSI 31981568-edge ohci_hcd:usb9
76: 0 0 0 0 0 0 0 0 PCI-MSI 31983616-edge ohci_hcd:usb10
77: 0 0 0 0 0 0 0 0 PCI-MSI 57671680-edge ohci_hcd:usb11
78: 0 0 0 0 0 0 0 0 PCI-MSI 57673728-edge ohci_hcd:usb12
79: 0 0 181 0 0 0 0 0 PCI-MSI 524288-edge radeon
80: 0 0 0 585 0 0 0 0 PCI-MSI 442368-edge snd_hda_intel:card0
81: 0 0 0 0 131 0 0 0 PCI-MSI 526336-edge snd_hda_intel:card1
82: 0 0 0 0 0 528 0 0 PCI-MSI 1048576-edge eth0-tx-0
83: 0 0 0 0 0 0 86 0 PCI-MSI 1048577-edge eth0-rx-1
84: 0 0 0 0 0 0 0 25 PCI-MSI 1048578-edge eth0-rx-2
85: 403 0 0 0 0 0 0 0 PCI-MSI 1048579-edge eth0-rx-3
86: 0 36 0 0 0 0 0 0 PCI-MSI 1048580-edge eth0-rx-4
NMI: 0 0 0 0 0 0 0 0 Non-maskable interrupts
LOC: 3314 5358 3365 7696 2759 3210 6456 5404 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 0 0 0 0 Performance monitoring interrupts
IWI: 0 0 0 0 0 0 0 0 IRQ work interrupts
RTR: 0 0 0 0 0 0 0 0 APIC ICR read retries
RES: 255 211 230 234 274 247 170 194 Rescheduling interrupts
CAL: 1419 1100 1487 1193 1536 1318 1197 1424 Function call interrupts
TLB: 355 181 392 118 641 583 549 445 TLB shootdowns
ERR: 0
MIS: 0
PIN: 0 0 0 0 0 0 0 0 Posted-interrupt notification event
NPI: 0 0 0 0 0 0 0 0 Nested posted-interrupt event
PIW: 0 0 0 0 0 0 0 0 Posted-interrupt wakeup event
/proc/interrupts - Vanilla 5.10.3 pci=nomsi - Audio fine
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 5 0 0 0 0 0 0 0 IO-APIC 2-edge timer
9: 0 1 0 0 0 0 0 0 IO-APIC 9-fasteoi acpi
16: 0 0 0 2172 0 0 0 0 IO-APIC 16-fasteoi pciehp, pciehp, xhci-hcd:usb2, radeon, ohci_hcd:usb10, ohci_hcd:usb11, eth0
17: 0 0 0 0 1287 0 0 0 IO-APIC 17-fasteoi pciehp, pciehp, pciehp, ahci[0000:43:00.0], ehci_hcd:usb7, ohci_hcd:usb12, snd_hda_intel:card1
18: 0 0 0 0 0 2352 0 0 IO-APIC 18-fasteoi pciehp, pciehp, firewire_ohci, firewire_ohci, ehci_hcd:usb8
19: 0 0 9967 0 0 0 0 0 IO-APIC 19-fasteoi pciehp, uhci_hcd:usb3, ahci[0000:00:1f.2], firewire_ohci, ohci_hcd:usb9
21: 0 0 0 0 0 0 0 0 IO-APIC 21-fasteoi uhci_hcd:usb1
22: 1028 0 0 0 0 0 0 0 IO-APIC 22-fasteoi ehci_hcd:usb6, snd_hda_intel:card0
23: 0 0 0 0 0 0 0 640 IO-APIC 23-fasteoi ehci_hcd:usb4
NMI: 0 0 0 0 0 0 0 0 Non-maskable interrupts
LOC: 4120 4186 4248 3799 3538 6653 4684 7473 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 0 0 0 0 Performance monitoring interrupts
IWI: 0 0 0 0 0 0 0 0 IRQ work interrupts
RTR: 0 0 0 0 0 0 0 0 APIC ICR read retries
RES: 325 211 238 249 209 301 166 202 Rescheduling interrupts
CAL: 1823 1277 1256 1434 1234 1452 1595 1437 Function call interrupts
TLB: 1069 509 566 757 254 886 887 596 TLB shootdowns
ERR: 0
MIS: 0
PIN: 0 0 0 0 0 0 0 0 Posted-interrupt notification event
NPI: 0 0 0 0 0 0 0 0 Nested posted-interrupt event
PIW: 0 0 0 0 0 0 0 0 Posted-interrupt wakeup event
/proc/interrupts - v5.10.3 Patch reverted - Audio fine
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 5 0 0 0 0 0 0 0 IO-APIC 2-edge timer
9: 0 1 0 0 0 0 0 0 IO-APIC 9-fasteoi acpi
16: 0 0 0 0 2 0 0 0 IO-APIC 16-fasteoi pciehp, pciehp, ohci_hcd:usb10, ohci_hcd:usb11
17: 0 0 0 0 0 1136 0 0 IO-APIC 17-fasteoi pciehp, pciehp, pciehp, ehci_hcd:usb7, ohci_hcd:usb12
18: 0 0 0 0 0 0 3231 0 IO-APIC 18-fasteoi pciehp, pciehp, ehci_hcd:usb8
19: 0 0 0 1 0 0 0 0 IO-APIC 19-fasteoi pciehp, uhci_hcd:usb4, ohci_hcd:usb9
21: 0 0 0 0 0 0 0 0 IO-APIC 21-fasteoi uhci_hcd:usb3
22: 0 0 19474 0 0 0 0 0 IO-APIC 22-fasteoi ehci_hcd:usb6
23: 0 0 0 0 0 0 31797 0 IO-APIC 23-fasteoi ehci_hcd:usb1
24: 0 0 11282 0 0 0 0 0 PCI-MSI 3670016-edge thunderbolt
25: 0 0 0 11282 0 0 0 0 PCI-MSI 3670017-edge thunderbolt
60: 0 0 0 0 3 0 0 0 PCI-MSI 2097152-edge firewire_ohci
61: 0 0 0 0 0 42120 0 0 PCI-MSI 512000-edge ahci[0000:00:1f.2]
62: 0 0 0 0 0 0 0 0 PCI-MSI 35127296-edge ahci[0000:43:00.0]
63: 0 3 0 0 0 0 0 0 PCI-MSI 33030144-edge firewire_ohci
64: 0 0 202 0 0 0 0 0 PCI-MSI 34603008-edge xhci_hcd
65: 0 0 0 0 0 0 0 0 PCI-MSI 34603009-edge xhci_hcd
66: 0 0 0 0 0 0 0 0 PCI-MSI 34603010-edge xhci_hcd
67: 0 0 0 0 0 0 0 0 PCI-MSI 34603011-edge xhci_hcd
68: 0 0 0 0 0 0 0 0 PCI-MSI 34603012-edge xhci_hcd
69: 0 0 0 0 0 0 0 0 PCI-MSI 34603013-edge xhci_hcd
70: 0 0 0 0 0 0 0 0 PCI-MSI 34603014-edge xhci_hcd
71: 0 0 0 0 0 0 0 0 PCI-MSI 34603015-edge xhci_hcd
72: 0 0 0 3 0 0 0 0 PCI-MSI 58720256-edge firewire_ohci
73: 0 0 0 0 933 0 0 0 PCI-MSI 524288-edge radeon
74: 0 0 0 0 0 587 0 0 PCI-MSI 442368-edge snd_hda_intel:card0
75: 0 0 0 0 0 0 259 0 PCI-MSI 526336-edge snd_hda_intel:card1
76: 0 0 0 0 0 0 0 51117 PCI-MSI 1048576-edge eth0-tx-0
77: 12265 0 0 0 0 0 0 0 PCI-MSI 1048577-edge eth0-rx-1
78: 0 7326 0 0 0 0 0 0 PCI-MSI 1048578-edge eth0-rx-2
79: 0 0 11955 0 0 0 0 0 PCI-MSI 1048579-edge eth0-rx-3
80: 0 0 0 60380 0 0 0 0 PCI-MSI 1048580-edge eth0-rx-4
NMI: 0 0 0 0 0 0 0 0 Non-maskable interrupts
LOC: 241817 314428 255056 260560 227955 232806 359864 235546 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 0 0 0 0 Performance monitoring interrupts
IWI: 0 0 0 0 0 0 0 0 IRQ work interrupts
RTR: 0 0 0 0 0 0 0 0 APIC ICR read retries
RES: 5187 5757 5852 6308 5333 5703 5789 5615 Rescheduling interrupts
CAL: 36945 39369 35857 35669 45833 36944 37615 34973 Function call interrupts
TLB: 43347 49477 53728 46389 62760 48046 51556 46292 TLB shootdowns
ERR: 0
MIS: 0
PIN: 0 0 0 0 0 0 0 0 Posted-interrupt notification event
NPI: 0 0 0 0 0 0 0 0 Nested posted-interrupt event
PIW: 0 0 0 0 0 0 0 0 Posted-interrupt wakeup event
Regards,
Brad
--
An expert is a person who has found out by his own painful
experience all the mistakes that one can make in a very
narrow field. - Niels Bohr
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine
2020-12-28 11:19 Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine Brad Campbell
@ 2020-12-28 14:42 ` Andy Shevchenko
2020-12-28 14:45 ` Andy Shevchenko
2020-12-28 16:10 ` Brad Campbell
0 siblings, 2 replies; 4+ messages in thread
From: Andy Shevchenko @ 2020-12-28 14:42 UTC (permalink / raw)
To: Brad Campbell; +Cc: linux-usb, gregkh
On Mon, Dec 28, 2020 at 07:19:49PM +0800, Brad Campbell wrote:
> G'day Andy,
>
> Commit 306c54d0edb6ba94d39877524dddebaad7770cf2 in kernel 5.9 breaks
> usb-audio on my machine.
>
> I have a 2011 iMac with a pair of Apple Thunderbolt displays. Both Thunderbolt
> displays have internal usb-audio devices. This patch causes the audio to stutter
> terribly. Reverting it resolves the issue on any kernel up to and
> including 5.10.3.
>
> Booting with pci=nomsi fixes the audio issues, but causes all sorts of
> other problems (like broken Thunderbolt display routing), so that's a non-starter.
>
> The usb audio devices would appear to be on the Pericom USB controllers in the displays.
> It wouldn't be the first peculiarity I've had on this machine due to the early Thunderbolt
> implementation.
>
> The issue is pretty much identical with the sound card on both monitors.
Thanks for the report!
Funny that previous mail in my mailbox is exactly about this issue for
PI7C9X440SL, i.e. fix [1] I made for v5.11 and Sasha ported to v5.10
(mentioned previous mail). Can you try to apply [1] and confirm issue gone?
[1]: f83c37941e88 ("PCI: Disable MSI for Pericom PCIe-USB adapter")
> | +-04.0-[39-69]----00.0-[3a-44]--+-00.0-[3b-3d]----00.0-[3c-3d]----03.0-[3d]--+-00.0 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
> | | | +-00.1 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
> | | | \-00.2 Pericom Semiconductor PI7C9X442SL USB EHCI Controller
> | +-05.0-[6a-9a]----00.0-[6b-72]--+-00.0-[6c-6e]----00.0-[6d-6e]----03.0-[6e]--+-00.0 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
> | | | +-00.1 Pericom Semiconductor PI7C9X442SL USB OHCI Controller
> | | | \-00.2 Pericom Semiconductor PI7C9X442SL USB EHCI Controller
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine
2020-12-28 14:42 ` Andy Shevchenko
@ 2020-12-28 14:45 ` Andy Shevchenko
2020-12-28 16:10 ` Brad Campbell
1 sibling, 0 replies; 4+ messages in thread
From: Andy Shevchenko @ 2020-12-28 14:45 UTC (permalink / raw)
To: Brad Campbell; +Cc: linux-usb, gregkh
On Mon, Dec 28, 2020 at 04:42:30PM +0200, Andy Shevchenko wrote:
> On Mon, Dec 28, 2020 at 07:19:49PM +0800, Brad Campbell wrote:
> > G'day Andy,
> >
> > Commit 306c54d0edb6ba94d39877524dddebaad7770cf2 in kernel 5.9 breaks
> > usb-audio on my machine.
> >
> > I have a 2011 iMac with a pair of Apple Thunderbolt displays. Both Thunderbolt
> > displays have internal usb-audio devices. This patch causes the audio to stutter
> > terribly. Reverting it resolves the issue on any kernel up to and
> > including 5.10.3.
> >
> > Booting with pci=nomsi fixes the audio issues, but causes all sorts of
> > other problems (like broken Thunderbolt display routing), so that's a non-starter.
> >
> > The usb audio devices would appear to be on the Pericom USB controllers in the displays.
> > It wouldn't be the first peculiarity I've had on this machine due to the early Thunderbolt
> > implementation.
> >
> > The issue is pretty much identical with the sound card on both monitors.
>
> Thanks for the report!
>
> Funny that previous mail in my mailbox is exactly about this issue for
> PI7C9X440SL, i.e. fix [1] I made for v5.11 and Sasha ported to v5.10
> (mentioned previous mail). Can you try to apply [1] and confirm issue gone?
>
> [1]: f83c37941e88 ("PCI: Disable MSI for Pericom PCIe-USB adapter")
For your convenience the URL to the actual commit:
https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?id=f83c37941e88
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine
2020-12-28 14:42 ` Andy Shevchenko
2020-12-28 14:45 ` Andy Shevchenko
@ 2020-12-28 16:10 ` Brad Campbell
1 sibling, 0 replies; 4+ messages in thread
From: Brad Campbell @ 2020-12-28 16:10 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: linux-usb, gregkh
On 28/12/20 10:42 pm, Andy Shevchenko wrote:
> On Mon, Dec 28, 2020 at 07:19:49PM +0800, Brad Campbell wrote:
>> G'day Andy,
>>
>> Commit 306c54d0edb6ba94d39877524dddebaad7770cf2 in kernel 5.9 breaks
>> usb-audio on my machine.
>>
>> I have a 2011 iMac with a pair of Apple Thunderbolt displays. Both Thunderbolt
>> displays have internal usb-audio devices. This patch causes the audio to stutter
>> terribly. Reverting it resolves the issue on any kernel up to and
>> including 5.10.3.
>>
>> Booting with pci=nomsi fixes the audio issues, but causes all sorts of
>> other problems (like broken Thunderbolt display routing), so that's a non-starter.
>>
>> The usb audio devices would appear to be on the Pericom USB controllers in the displays.
>> It wouldn't be the first peculiarity I've had on this machine due to the early Thunderbolt
>> implementation.
>>
>> The issue is pretty much identical with the sound card on both monitors.
>
> Thanks for the report!
>
> Funny that previous mail in my mailbox is exactly about this issue for
> PI7C9X440SL, i.e. fix [1] I made for v5.11 and Sasha ported to v5.10
> (mentioned previous mail). Can you try to apply [1] and confirm issue gone?
G'day Andy,
Can't ask for better than that. Yes, that patch on 5.10.3 solves the problem nicely.
Now I know what to look for, it's in 5.10.4.
Regards,
Brad
--
An expert is a person who has found out by his own painful
experience all the mistakes that one can make in a very
narrow field. - Niels Bohr
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-12-28 16:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-28 11:19 Patch "usb: hcd: Try MSI interrupts on PCI devices" breaks usb-audio on my machine Brad Campbell
2020-12-28 14:42 ` Andy Shevchenko
2020-12-28 14:45 ` Andy Shevchenko
2020-12-28 16:10 ` Brad Campbell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.