Trying to debug an issue with an ethernet usb-c adaptor, I found that
dmesg reports this:
usb: port power management may be unreliable
What does this mean? Where can I find a reliable documentation about this message?
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It only takes a minute to sign up.Sign up to join this community
The message was introduced in usb: sysfs link peer ports (it's part of a patch sequence reworking USB port power control). The underlying issue is described in
usb/power-management.txt in the kernel documentation:
Port suspend is sequenced to guarantee that hi-speed ports are powered-off before their superspeed peer is permitted to power-off.
(amongst other things).
Basically, USB 3 ports have a USB 2 peer from the controller's perspective, and which peer is used depends on the USB speed in use by the connected device. To manage power properly on such ports, the system needs to know which logical ports are peers: otherwise, it might power down a physical USB port which appears to be unused when in fact it is in use. The error message you're seeing indicates that, for some reason, the kernel was unable to determine a port's peer; as a result, it won't be able to handle all the power management scenarios for devices connected to that port.