lategoodbye / rpi-zero

Linux kernel source tree
Other
22 stars 3 forks source link

dwc2: NMI watchdog: BUG: soft lockup - CPU#0 stuck for 146s #1

Closed lategoodbye closed 6 years ago

lategoodbye commented 7 years ago

I inspired by this issue i build up a slightly modified setup with a Raspberry Pi B (mainline kernel), a powered 7 port USB hub and 5 Prolific PL2303 USB to serial convertors. I modified the usb_test for dwc2, which only tries to open all ttyUSB devices one after the other.

Unfortunately the complete system stuck after opening the first ttyUSB device ( heartbeat LED stop blinking, no reaction to debug UART). The only way to reanimate the system is to unplug them.

lategoodbye commented 7 years ago

I was able to narrow down the issue regarding to the test scenario:

Raspberry Pi B and direct connected PL2303 = issue reproducible

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/3p, 480M
        |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=smsc95xx, 480M
        |__ Port 2: Dev 4, If 0, Class=Vendor Specific Class, Driver=pl2303, 12M

Raspberry Pi Zero and PL2303 connected via 4 port USB HUB = issue reproducible

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 3: Dev 4, If 0, Class=Vendor Specific Class, Driver=pl2303, 12M

Raspberry Pi Zero and direct connected PL2303 = issue not reproducible

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
    |__ Port 1: Dev 5, If 0, Class=Vendor Specific Class, Driver=pl2303, 12M
lategoodbye commented 6 years ago

Progress on this issue: https://marc.info/?l=linux-usb&m=150823033800886&w=2

lategoodbye commented 6 years ago

Bugfix: https://marc.info/?l=linux-kernel&m=150904935806281&w=2

lategoodbye commented 6 years ago

Fix has been merged and should be available in 4.16.