Raspberry pi 4 USB controller randomly crashes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux-raspi (Ubuntu) |
Fix Released
|
Undecided
|
Juerg Haefliger | ||
Focal |
Fix Released
|
Undecided
|
Juerg Haefliger | ||
Hirsute |
Fix Released
|
Undecided
|
Juerg Haefliger | ||
Impish |
Fix Released
|
Undecided
|
Juerg Haefliger |
Bug Description
[ Impact ]
USB disks attached to a Pi experience something like:
[ 494.062055] sd 2:0:0:0: [sda] tag#12 uas_eh_
[ 494.069923] sd 2:0:0:0: [sda] tag#12 CDB: Write(10) 2a 00 00 02 6d 4f 00 00 48 00
[ 499.182085] sd 2:0:0:0: [sda] tag#13 uas_eh_
[ 499.190310] sd 2:0:0:0: [sda] tag#13 CDB: Write(10) 2a 00 00 02 6d 97 00 00 4d 00
[ 504.302113] sd 2:0:0:0: [sda] tag#19 uas_eh_
[ 504.310336] sd 2:0:0:0: [sda] tag#19 CDB: Write(10) 2a 00 00 00 95 da 00 00 01 00
And:
[ 535.538311] scsi host2: uas_eh_
[ 535.544699] xhci_hcd 0000:01:00.0: WARN Set TR Deq Ptr cmd failed due to incorrect slot or ep state.
[ 535.554032] xhci_hcd 0000:01:00.0: WARN Set TR Deq Ptr cmd failed due to incorrect slot or ep state.
[ Test Case ]
See below.
[ Where Problems Could Occur ]
Modifications are limited to the USB host xhci driver so problems will likely show up when accessing devices that use this host driver.
[ Original Description ]
My raspberry pi 4 running Ubuntu 20.04 server is constantly having trouble the the usb controller.
I have 2 externally powered USB hubs connected that have a few HDDs plugged in.
After a seemingly random amount of time (between 1 minute and 2 days) the usb controller will crash completely. No USB devices are detected anymore after that, i have to reboot the system.
I have tried:
* Providing a lot of cooling (metal case + desktop size fan)
* Switching the USB Hubs to a different brand
* Switching the power supply of the USB hubs
* Switching the power supply of the raspberry
Nothing helped, so i concluded that this probably is a kernel bug. I think the USB controller should not crash at the very least.
I've attached my dmesg.
lsb_release -rd
Description: Ubuntu 20.04.2 LTS
Release: 20.04
linux-raspi version: 5.4.0.1035.70
uname -a
Linux pi 5.4.0-1035-raspi #38-Ubuntu SMP PREEMPT Tue Apr 20 21:37:03 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
lsusb (after crash)
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
---
ProblemType: Bug
AlsaVersion: Advanced Linux Sound Architecture Driver Version k5.4.0-1035-raspi.
AplayDevices: Error: [Errno 2] No such file or directory: 'aplay'
ApportVersion: 2.20.11-
Architecture: arm64
ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord'
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/by-path', '/dev/snd/
Card0.Amixer.info: Error: [Errno 2] No such file or directory: 'amixer'
Card0.Amixer.
CasperMD5CheckR
DistroRelease: Ubuntu 20.04
ImageMediaBuild: 20210201.1
IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig'
Lspci-vt: -[0000:
Lsusb:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Lsusb-t:
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
Package: linux-raspi
PackageArchitec
PciMultimedia:
ProcEnviron:
TERM=xterm-
PATH=(custom, no user)
LANG=C.UTF-8
SHELL=/bin/bash
ProcFB:
ProcKernelCmdLine: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.
ProcVersionSign
RelatedPackageV
linux-
linux-
linux-firmware 1.187.12
RfKill: Error: [Errno 2] No such file or directory: 'rfkill'
StagingDrivers: bcm2835_isp bcm2835_v4l2 bcm2835_mmal_vchiq bcm2835_codec snd_bcm2835 vc_sm_cma
Tags: arm64-image raspi-image focal uec-images staging
Uname: Linux 5.4.0-1035-raspi aarch64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: N/A
_MarkForUpload: True
acpidump:
CVE References
Changed in linux-raspi (Ubuntu Focal): | |
status: | New → Confirmed |
Changed in linux-raspi (Ubuntu): | |
status: | New → Invalid |
Changed in linux-raspi (Ubuntu Impish): | |
status: | Invalid → New |
Changed in linux-raspi (Ubuntu Hirsute): | |
assignee: | nobody → Juerg Haefliger (juergh) |
Changed in linux-raspi (Ubuntu Impish): | |
assignee: | nobody → Juerg Haefliger (juergh) |
description: | updated |
tags: |
added: verification-done-hirsute removed: verification-needed-hirsute |
Can you provide some additional data?
$ apport-collect 1930629