brektrou / rtl8821CU

Realtek RTL8811CU/RTL8821CU USB Wi-Fi adapter driver for Linux
GNU General Public License v2.0
1.59k stars 460 forks source link

NULL pointer dereference on 3.4.113 linux kernel #38

Closed 9600bps closed 4 years ago

9600bps commented 4 years ago

I've cross compiled the driver for armv7 sun8iw7p1 (Allwinner H3, Orange Pi PC), 3.4.113 linux kernel (Linux LibreELEC 3.4.113 #1 SMP PREEMPT Wed Mar 1 00:01:16 CET 2017 armv7l GNU/Linux).

But unfortunately the driver crashed with "Unable to handle kernel NULL pointer dereference at virtual address 00000000". Is 3.x kernel version supported? What information should I add to the issue to help investigate the reason?

I added -g to the Makefile and removed --strip-debug, but it doesn't help to make traces more informative. A chunk from dmesg:

[  258.213035] RTW: module init start
[  258.213053] RTW: rtl8821cu v5.4.1_28754.20180921_COEX20180712-3232
[  258.213063] RTW: build time: Feb  2 2020 11:40:39
[  258.213071] RTW: rtl8821cu BT-Coex version = COEX20180712-3232
[  258.213087] sw_usb_enable_hcd: usbc_num = 2
[  258.213096] [wifi_pm]: set wl_reg_on 1 !
[  258.223115] hci: ERR: sunxi_ehci is already enable, can not enable again
[  258.223130] hci: ERR: sunxi_ohci is already enable, can not enable again
[  258.223381] usbcore: registered new interface driver rtl8821cu
[  258.223395] RTW: module init ret=0
[  283.508176] ehci_irq: highspeed device connect
[  283.770109] usb 4-1: new high-speed USB device number 2 using sunxi-ehci
[  283.923109] RTW: [HALMAC]11692M
[  283.923120] HALMAC_MAJOR_VER = 1
[  283.923128] HALMAC_PROTOTYPE_VER = 4
[  283.923137] HALMAC_MINOR_VER = 19
[  283.923145] HALMAC_PATCH_VER = 3
[  283.925151] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.185832] RTW: HW EFUSE
[  284.185866] RTW: 0x000: 29 81 00 BC  09 00 21 00  6E 04 A4 10  10 00 30 0B  
[  284.185969] RTW: 0x010: FF FF FF FF  FF FF FF FF  FF FF FF 02  FF FF FF FF  
[  284.186070] RTW: 0x020: FF FF 28 28  28 28 28 28  28 28 28 28  28 28 28 28  
[  284.186171] RTW: 0x030: 02 FF FF FF  FF FF EC FF  FF FF 2B 2B  2B 2B 2B 2B  
[  284.186272] RTW: 0x040: 30 30 30 30  30 33 FF FF  FF FF FF FF  FF FF FF FF  
[  284.186373] RTW: 0x050: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186474] RTW: 0x060: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186575] RTW: 0x070: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186676] RTW: 0x080: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186777] RTW: 0x090: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186878] RTW: 0x0A0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.186979] RTW: 0x0B0: FF FF FF FF  FF FF FF FF  7F 06 20 00  FF FF FF FF  
[  284.187080] RTW: 0x0C0: FF 01 00 41  00 00 00 00  00 FF 22 FF  FF FF FF FF  
[  284.187179] RTW: 0x0D0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.187280] RTW: 0x0E0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.187381] RTW: 0x0F0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.187482] RTW: 0x100: DA 0B 11 C8  E3 46 02 1C  BF CE 84 15  CA 09 03 52  
[  284.187583] RTW: 0x110: 65 61 6C 74  65 6B 0E 03  38 30 32 2E  31 31 61 63  
[  284.187685] RTW: 0x120: 20 4E 49 43  08 03 31 32  33 34 35 36  FF FF FF FF  
[  284.187786] RTW: 0x130: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.187887] RTW: 0x140: FF FF FF FF  00 00 31 0F  FF FF FF FF  FF FF FF FF  
[  284.187988] RTW: 0x150: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188089] RTW: 0x160: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188190] RTW: 0x170: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188292] RTW: 0x180: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188393] RTW: 0x190: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188494] RTW: 0x1A0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188595] RTW: 0x1B0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188795] RTW: 0x1C0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188897] RTW: 0x1D0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.188998] RTW: 0x1E0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.189099] RTW: 0x1F0: FF FF FF FF  FF FF FF FF  FF FF FF FF  FF FF FF FF  
[  284.189584] RTW: hal_com_config_channel_plan chplan:0x7F
[  284.202703] RTW: [HALMAC][ALWAYS]shall R reg twice!!
[  284.206592] RTW: WARN [HALMAC][WARN]H2C/C2H ver is compatible!!
[  284.321491] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.321864] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.322360] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.322727] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.323101] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.323476] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.323851] RTW: ERROR [HALMAC][ERR]Dump efuse in suspend
[  284.348957] RTW: rtw_regsty_chk_target_tx_power_valid return _FALSE for band:0, path:0, rs:0, t:-1
[  284.375511] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[  284.375552] pgd = c0004000
[  284.375569] [00000000] *pgd=00000000
[  284.375603] Internal error: Oops: 817 [#1] PREEMPT SMP ARM
[  284.381788] Modules linked in: 8821cu(O) 8021q cfg80211 mali ump hdmi_cec
[  284.383553] CPU: 1    Tainted: G           O  (3.4.113 #1)
[  284.383553] PC is at memcpy+0xb4/0x330
[  284.383553] LR is at 0x84cebf1c
[  284.383553] pc : [<c0292db4>]    lr : [<84cebf1c>]    psr: 00060013
[  284.383553] sp : ef1a9b74  ip : 0000001c  fp : ef1a9b9c
[  284.383553] r10: bf1e4904  r9 : bf1ce89c  r8 : f02cbd7e
[  284.383553] r7 : ef15a800  r6 : f02cbe24  r5 : f02c9000  r4 : 00000001
[  284.383553] r3 : 00000001  r2 : ffffffe6  r1 : f02cce18  r0 : 00000000
[  284.383553] Flags: nzcv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[  284.383553] Control: 10c5387d  Table: 6d33c06a  DAC: 00000015
[  284.383553] 
[  284.383553] PC: 0xc0292d34:
[  284.383553] 2d34  f5d1f01c ba000002 f5d1f03c f5d1f05c f5d1f07c e8b151f8 e2522020 e8a051f8
[  284.383553] 2d54  aafffffa e3720060 aafffff9 e212c01c e26cc020 108ff00c ea000011 e320f000
[  284.383553] 2d74  e4913004 e4914004 e4915004 e4916004 e4917004 e4918004 e491e004 e08ff00c
[  284.482546] 2d94  e320f000 e320f000 e4803004 e4804004 e4805004 e4806004 e4807004 e4808004
[  284.482546] 2db4  e480e004 e8bd01e0 e1b02f82 14d13001 24d14001 24d1c001 14c03001 24c04001
[  284.482546] 2dd4  24c0c001 e8bd8011 e26cc004 e35c0002 c4d13001 a4d14001 e4d1e001 c4c03001
[  284.482546] 2df4  a4c04001 e052200c e4c0e001 baffffed e211c003 0affffc4 e3c11003 e35c0002
[  284.482546] 2e14  e491e004 0a00002c ca000057 e252201c ba00001f e92d03e0 f5d1f000 e2522060
[  284.482546] 
[  284.482546] SP: 0xef1a9af4:
[  284.482546] 9af4  ffffffff f02cbd7e c0bdee5c f02cbd7e c0bdee80 c0292db4 00060013 ffffffff
[  284.482546] 9b14  ef1a9b5c ef1a9b9c ef1a9b28 c000dc18 c0008370 00000000 f02cce18 ffffffe6
[  284.482546] 9b34  00000001 00000001 f02c9000 f02cbe24 ef15a800 f02cbd7e bf1ce89c bf1e4904
[  284.482546] 9b54  ef1a9b9c 0000001c ef1a9b74 84cebf1c c0292db4 00060013 ffffffff ef15a800
[  284.482546] 9b74  f02c9000 f02cbe24 ef15a800 f02cbd7e 00000000 00000001 bf0f627c ef1a9bc4
[  284.482546] 9b94  ef1a9ba0 bf0f96e8 bf0f6270 00000000 e22e5000 00000000 e22e5000 00000001
[  284.482546] 9bb4  f02c9000 ef1a9bf4 ef1a9bc8 bf0fab2c bf0f963c 00000002 e22e5000 e22e5000
[  284.482546] 9bd4  f02c9000 bf14bcdc 00002dfc bf2217b4 e8a04a48 ef1a9c0c ef1a9bf8 bf0fac3c
[  284.482546] 
[  284.482546] FP: 0xef1a9b1c:
[  284.482546] 9b1c  ef1a9b28 c000dc18 c0008370 00000000 f02cce18 ffffffe6 00000001 00000001
[  284.482546] 9b3c  f02c9000 f02cbe24 ef15a800 f02cbd7e bf1ce89c bf1e4904 ef1a9b9c 0000001c
[  284.482546] 9b5c  ef1a9b74 84cebf1c c0292db4 00060013 ffffffff ef15a800 f02c9000 f02cbe24
[  284.482546] 9b7c  ef15a800 f02cbd7e 00000000 00000001 bf0f627c ef1a9bc4 ef1a9ba0 bf0f96e8
[  284.482546] 9b9c  bf0f6270 00000000 e22e5000 00000000 e22e5000 00000001 f02c9000 ef1a9bf4
[  284.482546] 9bbc  ef1a9bc8 bf0fab2c bf0f963c 00000002 e22e5000 e22e5000 f02c9000 bf14bcdc
[  284.482546] 9bdc  00002dfc bf2217b4 e8a04a48 ef1a9c0c ef1a9bf8 bf0fac3c bf0faa4c e22e5000
[  284.482546] 9bfc  00000001 ef1a9c5c ef1a9c10 bf0fd4f0 bf0fac18 bf1e5244 ee641400 bf221b48
[  284.482546] 
[  284.482546] R1: 0xf02ccd98:
[  284.482546] cd98  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] cdb8  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] cdd8  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] cdf8  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] ce18  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] ce38  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] ce58  ******** ******** ******** ******** ******** ******** ******** ********
[  284.482546] ce78  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 
[  284.760530] R5: 0xf02c8f80:
[  284.760530] 8f80  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 8fa0  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 8fc0  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 8fe0  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 9000  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 9020  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 9040  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 9060  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 
[  284.760530] R6: 0xf02cbda4:
[  284.760530] bda4  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bdc4  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bde4  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] be04  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] be24  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] be44  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] be64  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] be84  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] 
[  284.760530] R7: 0xef15a780:
[  284.760530] a780  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a7a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a7c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a7e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a800  6e616c77 00000030 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a820  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a840  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] a860  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  284.760530] 
[  284.760530] R8: 0xf02cbcfe:
[  284.760530] bcfc  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bd1c  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bd3c  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bd5c  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bd7c  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bd9c  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bdbc  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bddc  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] bdfc  ******** ******** ******** ******** ******** ******** ******** ********
[  284.760530] Process khubd (pid: 33, stack limit = 0xef1a82f8)
[  284.760530] Stack: (0xef1a9b74 to 0xef1aa000)
[  284.760530] 9b60:                                              f02c9000 f02cbe24 ef15a800
[  284.760530] 9b80: f02cbd7e 00000000 00000001 bf0f627c ef1a9bc4 ef1a9ba0 bf0f96e8 bf0f6270
[  284.760530] 9ba0: 00000000 e22e5000 00000000 e22e5000 00000001 f02c9000 ef1a9bf4 ef1a9bc8
[  284.760530] 9bc0: bf0fab2c bf0f963c 00000002 e22e5000 e22e5000 f02c9000 bf14bcdc 00002dfc
[  284.760530] 9be0: bf2217b4 e8a04a48 ef1a9c0c ef1a9bf8 bf0fac3c bf0faa4c e22e5000 00000001
[  284.760530] 9c00: ef1a9c5c ef1a9c10 bf0fd4f0 bf0fac18 bf1e5244 ee641400 bf221b48 ee641468
[  284.760530] 9c20: eebfe600 eebfe620 c055f880 0034b85c ef1a9c5c eebfe620 00000000 ee641400
[  284.760530] 9c40: bf221a88 eebfe600 bf221b48 e8a04a48 ef1a9c84 ef1a9c60 c038bd3c bf0fcecc
[  284.760530] 9c60: eebfe620 c0cafd34 c034277c bf221a88 00000008 c0bc1978 ef1a9cac ef1a9c88
[  284.760530] 9c80: c0342640 c038bc34 bf221a88 eebfe620 c034277c 00000000 ee641468 c0bc1978
[  284.760530] 9ca0: ef1a9cc4 ef1a9cb0 c03427b4 c034257c 00000000 eebfe620 ef1a9cec ef1a9cc8
[  284.760530] 9cc0: c0340c74 c0342788 ef179a78 eeacf2bc ef120400 eebfe620 c0bc1990 eebfe654
[  284.760530] 9ce0: ef1a9d0c ef1a9cf0 c034251c c0340bec eebfe620 c0bc1990 eebfe620 00000000
[  284.760530] 9d00: ef1a9d2c ef1a9d10 c0341a4c c034249c eebfe620 00000000 eebfe628 00000000
[  284.760530] 9d20: ef1a9d74 ef1a9d30 c033ffe8 c0341a20 ef1a9d54 ef1a9d40 c034aac0 c03476e4
[  284.760530] 9d40: 00000020 ee641400 ef1a9d74 ee641400 eebfe250 eebfe600 eebfe250 ee641468
[  284.760530] 9d60: e8bee180 e8a04a48 ef1a9de4 ef1a9d78 c038a3a0 c033fb70 00000001 00000000
[  284.760530] 9d80: 00000000 00000000 00001388 00000000 e8bee140 ee641468 e8bee184 00000001
[  284.760530] 9da0: 00000000 00000004 e8bee184 eebfe250 00000000 ee94fc00 c03807d4 ee641400
[  284.760530] 9dc0: 00000001 c034277c c0bc1ffc 00000008 c0bc182c 00000000 ef1a9dfc ef1a9de8
[  284.760530] 9de0: c03925dc c0389e28 ee641400 c0bc1ffc ef1a9e14 ef1a9e00 c038bc10 c039258c
[  284.760530] 9e00: ee641468 c0cafd34 ef1a9e3c ef1a9e18 c0342640 c038bbe8 c0bc1ffc ee641468
[  284.760530] 9e20: c034277c 00000000 ee95c068 c0bc182c ef1a9e54 ef1a9e40 c03427b4 c034257c
[  284.760530] 9e40: 00000000 ee641468 ef1a9e7c ef1a9e58 c0340c74 c0342788 ef179a78 ef101c3c
[  284.760530] 9e60: ef120400 ee641468 c0bc1990 ee64149c ef1a9e9c ef1a9e80 c034251c c0340bec
[  284.760530] 9e80: ee641468 c0bc1990 ee641468 00000000 ef1a9ebc ef1a9ea0 c0341a4c c034249c
[  284.760530] 9ea0: ee641468 00000000 ee641470 00000000 ef1a9f04 ef1a9ec0 c033ffe8 c0341a20
[  284.760530] 9ec0: 00000007 e8a04280 39383100 3538333a ee94fc00 00000000 ef1a9f04 ee641400
[  284.760530] 9ee0: ee641468 00000001 ee95c000 00000000 ee94fc18 00000000 ef1a9f24 ef1a9f08
[  284.760530] 9f00: c0383860 c033fb70 ee938e38 00000001 ee641400 ee95c000 ef1a9fb4 ef1a9f28
[  284.760530] 9f20: c0384a04 c03836b4 09f43d74 00000000 00000000 0000000a 00000001 ee95c09c
[  284.760530] 9f40: ee938e08 00000002 ee938c20 ee938c00 ee94fc00 ee938e89 ee938c20 00000000
[  284.760530] 9f60: ee95c000 ee938e00 ef047f0c 05010013 00000000 00000000 ef0f39c0 c0049ed8
[  284.760530] 9f80: ef1a9f80 ef1a9f80 00000013 ef047efc 00000000 c0383f8c 00000013 00000000
[  284.760530] 9fa0: 00000000 00000000 ef1a9ff4 ef1a9fb8 c0049644 c0383f98 00000000 00000000
[  284.760530] 9fc0: 00000000 00000000 00000000 00000000 ef1a9fd0 ef1a9fd0 00000000 ef047efc
[  284.760530] 9fe0: c00495b0 c000f300 00000000 ef1a9ff8 c000f300 c00495bc 7b77ffdf bffbbfff
[  284.760530] Code: e4805004 e4806004 e4807004 e4808004 (e480e004) 
[  285.442781] ---[ end trace 65e9928d154e6a5d ]---
brektrou commented 4 years ago

This driver doesn't support Linux version 3

rrafal1337 commented 4 years ago

I can propose Arch Linux ARM for your allwinner board. Already tested on my NanoPi Neo and it works fine even if archlinuxarm doesn't say they support it. All allwinnerboards shares same u-boot-sunxi-with-spl.bin na boot.scr and works on architecture armv7. Here is link: https://archlinuxarm.org/platforms/armv7/allwinner/a20-olinuxino-micro There is no need to install u-boot package later.

9600bps commented 4 years ago

Ok, thx guys.