rtw_8822ce 的 Wifi 断线问题

rtw_8822ce 的 Wifi 断线问题

几个月以来,我一直面临以下问题。这些问题从未如此麻烦,因为它们每隔几周就会发生一次。当时只需简单重启即可。但现在,它们每隔几分钟就会发生一次,这使我设备上的 wifi 完全无法使用。我自己找不到解决办法。因此,有人能帮我解决一下吗哈哈

背景:

OS: Ubuntu 22.04.1 LTS x86_64
Host: ASUS TUF Gaming A17 FA706IH_
Kernel: 5.15.0-60-lowlatency

问题:

Sometimes wifi disconnects suddenly. It also fails to detect any networks when opened from settings.
At other times, it does detect networks, but fails to connect to them.
At times it remains connected to networks without actually having any internet access.

运行 dmesg 后,我得到以下结果:

================================================================================
[ 27.787744] UBSAN: array-index-out-of-bounds in /home/fenrir/rtw88/rtw8822c.c:4449:20
[ 27.787745] index 3 is out of range for type 'u8 [2][4]'
[ 27.787746] CPU: 6 PID: 276 Comm: kworker/u32:4 Tainted: P W OE 5.15.0-60-lowlatency #66-Ubuntu
[ 27.787747] Hardware name: ASUSTeK COMPUTER INC. ASUS TUF Gaming A17 FA706IH_FA706IH/FA706IH, BIOS FA706IH.316 03/12/2021
[ 27.787748] Workqueue: phy0 rtw_watch_dog_work [rtw_core]
[ 27.787753] Call Trace:
[ 27.787754]
[ 27.787754] show_stack+0x52/0x5c
[ 27.787755] dump_stack_lvl+0x4a/0x63
[ 27.787757] dump_stack+0x10/0x16
[ 27.787759] ubsan_epilogue+0x9/0x49
[ 27.787761] __ubsan_handle_out_of_bounds.cold+0x44/0x49
[ 27.787763] ? rtw8822c_phy_cck_pd_set+0x40c/0x820 [rtw_8822c]
[ 27.787765] rtw8822c_phy_cck_pd_set+0x5c6/0x820 [rtw_8822c]
[ 27.787767] ? rtw_write32_mask+0x6c/0xa0 [rtw_8822c]
[ 27.787771] rtw_phy_dynamic_mechanism+0x347/0x720 [rtw_core]
[ 27.787777] rtw_watch_dog_work+0x1dd/0x270 [rtw_core]
[ 27.787782] process_one_work+0x222/0x400
[ 27.787784] worker_thread+0x50/0x3f0
[ 27.787785] ? process_one_work+0x400/0x400
[ 27.787786] kthread+0x13b/0x160
[ 27.787788] ? set_kthread_struct+0x50/0x50
[ 27.787790] ret_from_fork+0x22/0x30
[ 27.787792]
[ 27.787793] ================================================================================
[ 27.790852] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 27.793920] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 27.797062] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 28.097975] rtw_8822ce 0000:03:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x000c address=0xaef140b0 flags=0x0000]
[ 29.828972] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 29.832059] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 29.835154] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 29.838290] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 31.812918] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 31.816009] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 31.819164] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 33.796964] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 33.800052] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 33.903942] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 33.907009] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 35.844931] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 35.848009] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 35.851084] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 35.854209] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 37.828947] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 37.832046] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 37.835174] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 39.813929] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 39.817015] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 39.820153] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 41.796942] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 41.800045] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 41.903932] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 43.844919] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 43.848000] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 43.851059] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 43.854180] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 45.828967] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 45.832056] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 45.835201] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 47.812945] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 47.816020] rtw_8822ce 0000:03:00.0: failed to send h2c command
[ 47.819153] rtw_8822ce 0000:03:00.0: failed to send h2c command

在其他时候,我也会在 dmesg 中收到错误,例如:mac 开机失败或无法轮询偏移量某些东西。

我也多次遇到这种情况:

[ 756.074974] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.074979] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.074998] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075006] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075009] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075017] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075023] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075032] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075040] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075048] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075056] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075064] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075073] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075085] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075091] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075096] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075103] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075112] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075121] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075129] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075138] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status
[ 756.075213] rtw_8822ce 0000:03:00.0: pci bus timeout, check dma status```

答案1

以下是我发表此文以来发生的所有事情的更新。

  1. 我和这个 wifi 驱动程序的维护者进行了交谈这里他们说我的输出不正常,而且肯定是出现了错误。他们尝试与 Realtek 的联系人交谈。与此同时,为了方便起见,我拔掉了 wifi 卡,清理了一下,然后重新插上。我遇到的问题消失了。一周后,我告诉了他们同样的情况,我们的谈话就此结束。
  2. 然而,大约一个月后,问题又开始出现。很明显,这更多的是硬件问题,而不是软件问题。在进一步挖掘有关此特定卡的信息后,我发现有不少人抱怨卡的质量差,以及他们必须在一两年内更换它。我无法提供此链接,因为它是一段时间前的事了。我认为这是在 ASUS TUF subreddit 上,也可能是在 Hubzilla 上。
  3. 我再次尝试了插入拔出技巧,但看起来它已经停止工作了。因此,我别无选择,只能为此购买一张新的 wifi 卡。我从亚马逊购买了最便宜的品牌 wifi 卡。这里是。我 6 个多月前就安装了它,它一直运行良好,没有任何 wifi 问题。不幸的是,这次迁移也破坏了我的蓝牙功能。我不知道这是硬件限制还是软件限制。不管是什么,我都不在乎,因为我几乎从未在笔记本电脑上使用过蓝牙。另外,我没有钱购买比这个贵得多的 wifi+蓝牙卡。

相关内容