RTL8821CE 驱动程序在 Ubuntu 20.04.3 上停止工作

RTL8821CE 驱动程序在 Ubuntu 20.04.3 上停止工作

我必须安装驱动程序https://github.com/tomaspinho/rtl8821ce在华硕笔记本电脑上试过几次,每次都能工作一段时间,然后才会出现故障。我查看了几十个“解决方案”,但没有一个能真正永久解决问题(也就是说,我必须在一段时间后卸载/重新安装驱动程序)。但是现在,如果没有 USB 适配器,我的 Wifi 根本无法运行。

RTL8821CE 驱动程序已安装,但未激活,@heynnema,请求分享以下内容以便于找到解决方案:

rtl8821ce, v5.5.2_34066.20200325, 5.11.0-37-generic, x86_64: installed (WARNING! Diff between built and installed module!)
 ~  sudo lshw -C network
[sudo] password for jg: 
  *-network UNCLAIMED       
       description: Network controller
       product: RTL8821CE 802.11ac PCIe Wireless Network Adapter
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:01:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress cap_list
       configuration: latency=0
       resources: ioport:f000(size=256) memory:fcf00000-fcf0ffff
  *-network:0
       description: Ethernet interface
       physical id: 1
       logical name: ipv6leakintrf0
       serial: 4a:c3:07:5b:2c:e5
       capabilities: ethernet physical
       configuration: broadcast=yes driver=dummy driverversion=5.11.0-37-generic
  *-network:1
       description: Wireless interface
       physical id: 2
       bus info: usb@1:2
       logical name: wlx984827c6b66c
       serial: 98:48:27:c6:b6:6c
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=r8188eu driverversion=5.11.0-37-generic ip=192.168.1.129 multicast=yes wireless=IEEE 802.11g
~  cat /etc/network/interfaces
cat: /etc/network/interfaces: No such file or directory
 ✘  ~  cat /etc/netplan/*.yaml
# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager

任何指导/帮助都将不胜感激。

已编辑,根据@Jeremy31 的回应,添加每个请求的输出以获取更多信息:

~  modinfo 8821ce | egrep -i 'file|vermagic'; mokutil --sb-state
filename:       /lib/modules/5.11.0-37-generic/updates/dkms/8821ce.ko
vermagic:       5.11.0-37-generic SMP mod_unload modversions 
parm:           rtw_FileMaskEfuse:default drv Mask Efuse value:0 (uint)
parm:           rtw_phy_file_path:The path of phy parameter (charp)
parm:           rtw_load_phy_file:PHY File Bit Map (int)
parm:           rtw_decrypt_phy_file:Enable Decrypt PHY File (int)
SecureBoot disabled

根据@Jeremy31 的请求进行第二次编辑以获取更多信息:

~  dmesg | grep 8821  
[    2.155492] 8821ce: loading out-of-tree module taints kernel.
[    2.191521] 8821ce: module verification failed: signature and/or required key missing - tainting kernel
[    2.197826] rtl8821ce 0000:01:00.0: enabling device (0000 -> 0003)
[    2.219923] rtl8821ce 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x0009 address=0xfede7000 flags=0x0000]
[   12.399578] proc_dir_entry 'net/rtl8821ce' already registered
[   12.399671] Modules linked in: rtl8821ce(OE+) rfcomm dummy cmac algif_hash algif_skcipher af_alg bnep binfmt_misc nls_iso8859_1 uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 btusb btrtl videobuf2_common btbcm btintel videodev bluetooth mc ecdh_generic ecc rtsx_usb_ms memstick rtsx_usb_sdmmc rtsx_usb snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence intel_rapl_msr snd_hda_codec intel_rapl_common snd_hda_core snd_hwdep soundwire_bus snd_soc_core snd_compress edac_mce_amd ac97_bus snd_pcm_dmaengine kvm_amd snd_pcm kvm crct10dif_pclmul amdgpu snd_seq_midi ghash_clmulni_intel snd_seq_midi_event joydev snd_rawmidi iommu_v2 gpu_sched drm_ttm_helper ttm aesni_intel snd_seq crypto_simd drm_kms_helper snd_seq_device snd_timer cryptd glue_helper rapl input_leds cec 8821ce(OE) wmi_bmof asus_nb_wmi serio_raw rc_core i2c_algo_bit k10temp snd fb_sys_fops hid_multitouch
[   12.400393]  rtw_drv_proc_init+0x3b/0xc8 [rtl8821ce]
[   12.400660]  rtw_drv_entry+0x28/0x1000 [rtl8821ce]
[   12.400930] WARNING: CPU: 0 PID: 323 at /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/rtw_proc.c:296 rtw_drv_proc_init+0x54/0xc8 [rtl8821ce]
[   12.401134] Modules linked in: rtl8821ce(OE+) rfcomm dummy cmac algif_hash algif_skcipher af_alg bnep binfmt_misc nls_iso8859_1 uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 btusb btrtl videobuf2_common btbcm btintel videodev bluetooth mc ecdh_generic ecc rtsx_usb_ms memstick rtsx_usb_sdmmc rtsx_usb snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence intel_rapl_msr snd_hda_codec intel_rapl_common snd_hda_core snd_hwdep soundwire_bus snd_soc_core snd_compress edac_mce_amd ac97_bus snd_pcm_dmaengine kvm_amd snd_pcm kvm crct10dif_pclmul amdgpu snd_seq_midi ghash_clmulni_intel snd_seq_midi_event joydev snd_rawmidi iommu_v2 gpu_sched drm_ttm_helper ttm aesni_intel snd_seq crypto_simd drm_kms_helper snd_seq_device snd_timer cryptd glue_helper rapl input_leds cec 8821ce(OE) wmi_bmof asus_nb_wmi serio_raw rc_core i2c_algo_bit k10temp snd fb_sys_fops hid_multitouch
[   12.401402] RIP: 0010:rtw_drv_proc_init+0x54/0xc8 [rtl8821ce]
[   12.401687]  rtw_drv_entry+0x28/0x1000 [rtl8821ce]
[   12.402034] Error: Driver 'rtl8821ce' is already registered, aborting...

根据@Jermemy31 的附加信息请求进行第三次编辑:

✘  ~  dmesg | grep 8821
[    2.080005] 8821ce: loading out-of-tree module taints kernel.
[    2.080989] 8821ce: module verification failed: signature and/or required key missing - tainting kernel
[    2.085513] rtl8821ce 0000:01:00.0: enabling device (0000 -> 0003)
[    2.114711] rtl8821ce 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x0009 address=0xfed97000 flags=0x0000]
[    2.115070] WARNING: CPU: 0 PID: 308 at /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/hal/rtl8821c/rtl8821c_halinit.c:122 rtl8821c_power_off+0x62/0x8d [8821ce]
[    2.115163] Modules linked in: 8821ce(OE+) rapl cec input_leds(+) rc_core asus_nb_wmi(+) hid_multitouch(+) snd serio_raw wmi_bmof efi_pstore snd_rn_pci_acp3x i2c_algo_bit fb_sys_fops syscopyarea ccp k10temp snd_pci_acp3x sysfillrect cfg80211 sysimgblt soundcore mac_hid sch_fq_codel msr parport_pc ppdev lp parport drm ip_tables x_tables autofs4 hid_generic mfd_aaeon asus_wmi sparse_keymap nvme crc32_pclmul ahci libahci xhci_pci nvme_core xhci_pci_renesas i2c_piix4 wmi video i2c_hid hid
[    2.115211] RIP: 0010:rtl8821c_power_off+0x62/0x8d [8821ce]
[    2.115309]  rtw_hal_power_off+0x3e/0x41 [8821ce]
[    2.115397]  hal_read_mac_hidden_rpt+0x143/0x226 [8821ce]
[    2.115476]  rtl8821c_read_efuse+0x35f/0x599 [8821ce]
[    2.115549]  read_adapter_info+0xe/0x15 [8821ce]
[    2.115621]  rtw_hal_read_chip_info+0x76/0x81 [8821ce]
[    2.115698]  rtw_pci_primary_adapter_init+0x148/0x36b [8821ce]
[    2.115774]  rtw_drv_init+0x2cf/0x6a3 [8821ce]
[    2.115888]  rtw_drv_entry+0x4c/0x1000 [8821ce]

答案1

我不得不使用另一个 wifi usb 适配器重新安装驱动程序

我使用过的命令:

sudo aptitude reinstall rtl8821ce-dkms
sudo modprobe rtl8821ce

然后我把 USB 适配器拆下来,rtl 又能正常工作了

附言:这在 Ubuntu 22.04LTS 中又发生了……!

相关内容