Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rtl8822bu: high latency, "failed to wait usb ctrl" errors #5

Open
spectrumjade opened this issue May 9, 2021 · 1 comment
Open

Comments

@spectrumjade
Copy link

I'm running into an issue trying to use this driver with my 8822bu USB dongle. After loading the module and plugging in the dongle, it is successfully recognized, an interface shows up, and I am able to scan for and join networks. However it has very high packet latency and correspondingly low throughput. For example:

$ ping 172.16.1.1
PING 172.16.1.1 (172.16.1.1) 56(84) bytes of data.
64 bytes from 172.16.1.1: icmp_seq=1 ttl=64 time=2063 ms
64 bytes from 172.16.1.1: icmp_seq=2 ttl=64 time=2118 ms
64 bytes from 172.16.1.1: icmp_seq=3 ttl=64 time=2381 ms

This is with an access point that is a few feet away, and I would expect to see latency under 1 ms.

Looking in the kernel log, I can see a lot of failure messages. Here's a snippet:

[38973.221372] usbcore: registered new interface driver rtw_8822bu
[38985.694888] usb 1-2: new high-speed USB device number 4 using xhci_hcd
[38986.052877] usb 1-2: New USB device found, idVendor=0bda, idProduct=b812, bcdDevice= 2.10
[38986.052879] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[38986.052880] usb 1-2: Product: USB3.0 802.11ac 1200M Adapter
[38986.052881] usb 1-2: Manufacturer: Realtek
[38986.052881] usb 1-2: SerialNumber: 123456
[38986.058034] rtw_8822bu 1-2:1.0: USB: 2
[38986.058091] rtw_8822bu 1-2:1.0: firmware: direct-loading firmware rtw88/rtw8822b_fw.bin
[38986.058093] rtw_8822bu 1-2:1.0: Firmware version 27.2.0, H2C version 13
[38987.099372] rtw_8822bu 1-2:1.0: use rfe_def[3]
[38988.260105] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[38989.251323] rtw_8822bu 1-2:1.0: start vif bc:ec:23:c3:5c:d6 on port 0
[38989.312292] rtw_8822bu 1-2:1.0: stop vif bc:ec:23:c3:5c:d6 on port 0
[38991.302133] rtw_8822bu 1-2:1.0: start vif 4a:0e:6c:6e:cf:e9 on port 0
[38994.131871] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.162061] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.192599] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.223012] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[38994.253239] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[38994.283422] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.313841] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.449329] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[38994.479484] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:192
[39002.466902] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[39002.497113] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[39002.527281] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[39002.557467] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64
[39002.587621] rtw_8822bu 1-2:1.0: failed to wait usb ctrl req:64

These messages repeat until I unplug the dongle or unload the driver. I've noticed that the number is always either 64 or 192. Unfortunately I'm a bit out of my depth here and am not sure how to continue debugging. Any thoughts? This dongle does work using the separate 88x2bu driver, so I don't think the hardware is broken.

I'm running kernel version 5.10.

@creeper123123321
Copy link

creeper123123321 commented Sep 11, 2022

increasing RTW_USB_CONTROL_MSG_TIMEOUT to higher value seems to stop failed to wait usb ctrl req for me with 8821cu i forgot to disable rtl8821cu driver... and increasing timeout seems to cause some kernel lags
i can also reproduce failed to wait usb ctrl req on 8821cu

[  194.160770] rtw_8821cu 1-1:1.0: USB: 2
[  194.161664] rtw_8821cu 1-1:1.0: Firmware version 24.8.0, H2C version 12
[  194.372406] usbcore: registered new interface driver rtw_8821cu
[  194.382450] rtw_8821cu 1-1:1.0 wlxa0d7684041e3: renamed from wlan0
[  195.320353] rtw_8821cu 1-1:1.0: start vif [mac address] on port 0
[  201.438127] rtw_8821cu 1-1:1.0: failed to wait usb ctrl req:192
[  204.929741] wlxa0d7684041e3: authenticate with [mac address]
[  205.052252] rtw_8821cu 1-1:1.0: error beacon valid
[  205.052562] rtw_8821cu 1-1:1.0: failed to download rsvd page
[  205.052971] rtw_8821cu 1-1:1.0: failed to download firmware
[  205.056537] rtw_8821cu 1-1:1.0: leave idle state failed
[  205.062830] rtw_8821cu 1-1:1.0: failed to leave ips state
[  205.062832] rtw_8821cu 1-1:1.0: failed to leave idle state
[  213.083458] rtw_8821cu 1-1:1.0: failed to wait usb ctrl req:192
[  220.679439] rtw_8821cu 1-1:1.0: failed to wait usb ctrl req:192
[  226.052124] rtw_8821cu 1-1:1.0: failed to wait usb ctrl req:192
[  231.079881] rtw_8821cu 1-1:1.0: failed to wait usb ctrl req:192

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants