kuba-moo / mt7630e

Mediatek driver for MT7630E WiFi+BT combo with my fixes
42 stars 8 forks source link

General Freeze when disconnecting under 4.1.0 kernel #15

Open CaptainBloodz opened 9 years ago

CaptainBloodz commented 9 years ago

Hi, Using NW 1.0.0, there's a general freeze when disconnecting the WIFI, whereas it has revealed to be rock stable with kernel 4.0.5 Plz feel free to ask for any additional data you wish. (gentoo environment)

kuba-moo commented 9 years ago

Can you try to obtain a stack trace somehow? Either by disconnecting from the console (Ctrl-Alt-F4), by using netconsole or by connecting some serial device?

CaptainBloodz commented 9 years ago

Deadly busy for the next 24h, will do my best via console disconnection method All I can say now is that there is a stack displayed at shutdown. I expect to see it in /var/log/dmesg or /var/log/message, although must say I'm very new at this :) I must also say that linux headers were at 4.0.5 when last compiled. 4.1.0 have only been published a couple of hours ago in gentoo.

Le 23/06/2015 17:49, Jakub Kicinski a écrit :

Can you try to obtain a stack trace somehow? Either by disconnecting from the console (Ctrl-Alt-F4), by using netconsole or by connecting some serial device?

— Reply to this email directly or view it on GitHub https://github.com/kuba-moo/mt7630e/issues/15#issuecomment-114532221.

CaptainBloodz commented 9 years ago

Here's the thingie: Did it via following sequence nmcli r wifi on nmcli r wifi off

So I extracted data properly there could be some log from the 1st command nmcli r wifi on.

[ 4.792486] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1 pAd->WlanFunCtrl.word = 0x0, Reg-WlanFunCtrl=0xffff0143 [ 4.792492] WlanFunCtrl.word = 0xffff0143 [ 4.792548] MACVersion = 0x76502000 [ 4.792561] <== MT76x0_WLAN_ChipOnOff(): pAd->WlanFunCtrl.word = 0xffff0143, Reg->WlanFunCtrl=0xffff0143! [ 4.792580] MAC_version=0x76300002 [ 4.792589] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 7630, rev 0002 detected [ 4.794629] MAC: 54:35:30:bc:3f:2d [ 4.794636] MAC_version=0x76300002 [ 4.794638] RFIC =0x7630 [ 4.794643] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 7630 detected [ 4.794645] rt2x00dev->chip.rt = 0x7630 [ 4.794647] rt2x00dev->chip.rf = 0x7630 [ 4.794976] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 4.795659] -->RTMPAllocTxRxRingMemory [ 4.795668] CTRL Ring: total 512 bytes allocated [ 4.795670] <-- RTMPAllocTxRxRingMemory, Status=0 [ 4.968296] mt7630e 0000:02:00.0 wlan1: renamed from wlan0 [ 5.704193] random: nonblocking pool is initialized [ 6.629720] cfg80211: Calling CRDA to update world regulatory domain [ 7.464252] cfg80211: World regulatory domain updated: [ 7.464258] cfg80211: DFS Master region: unset [ 7.464261] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time) [ 7.464267] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464270] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464273] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464277] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A) [ 7.464281] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s) [ 7.464284] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s) [ 7.464286] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464289] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A) [ 8.927431] EXT4-fs (sda1): re-mounted. Opts: (null) [ 9.180387] Adding 8184828k swap on /dev/sda5. Priority:-1 extents:1 across:8184828k FS [ 14.080399] r8169 0000:03:00.2 eth0: link down [ 14.081857] ===>rt2x00lib_start [ 14.081882] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1 pAd->WlanFunCtrl.word = 0xffff0143, Reg-WlanFunCtrl=0xffff0143 [ 14.081883] Reset(1) WlanFunCtrl.word = 0xffff014f [ 14.081934] Reset(2) WlanFunCtrl.word = 0xffff0143 [ 14.081985] WlanFunCtrl.word = 0xffff0143 [ 14.082038] MACVersion = 0x76502000 [ 14.082048] <== MT76x0_WLAN_ChipOnOff(): pAd->WlanFunCtrl.word = 0xffff0143, Reg->WlanFunCtrl=0xffff0143! [ 14.082105] ASIC is ready [ 14.082114] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'MT7650E234.bin' [ 14.094689] ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 112.3 [ 14.094707] rt2800_load_firmware: COM_REG0(0x730) = 0x1 [ 14.107491] ===>rt2x00lib_enable_radio [ 14.107530] ===>rt2800_enable_radio: [ 14.107874] reg FCE_PSE_CTRL =x0 [ 14.107892] rt2800_init_bbp(): Init BBP Registers MT7630 [ 14.108900] BBP version = f000f200 [ 14.108901] rt2800_init_bbp(): Init BBP Registers MT7630 [ 14.108944] rt2800_init_bbp(): Init BBP Registers MT7630 complete [ 14.108945] ==>rt2800lib_init_queues [ 14.108947] -->TX_RING: Base=0x0x00000000d48e5000, Cnt=64 [ 14.108949] -->TX_RING: Base=0x0x00000000d3848000, Cnt=64 [ 14.108950] -->TX_RING: Base=0x0x00000000d5328000, Cnt=64 [ 14.108951] -->TX_RING: Base=0x0x00000000d3900000, Cnt=64 [ 14.108953] -->RX_RING: Base=0x0x00000000d4a84000, Cnt=128 [ 14.108954] AsicInitTxRxRing [ 14.108956] -->TX_RING_CTRL: Base=0xd53fa000, Cnt=32! [ 14.108963] <===rt2800lib_init_queues [ 14.108964] MAC 54:35:30:bc:3f:2d [ 14.108977] rt2800_enable_radio -7630 Dual antenna mode [ 14.127390] rt2800_init_rfcsr(): Init RF Registers MT7630 [ 14.128003] rt2800_init_rfcsr: B0.R22 = 0x73 [ 14.128025] rt2800_init_rfcsr(): Init RF Registers MT7630 complete [ 14.148534] --> AsicCheckCommanFail2 Timeout Command = 2, CmdStatus= 0x0 [ 14.169037] --> AsicCheckCommanFail2 Timeout Command = 3, CmdStatus= 0x0 [ 14.169051] rtmp_bbp_set_rxpath(): rxpath=1, Set AGC1_R0=0x21400, agc_r0=0x21400 [ 14.169054] rtmp_bbp_set_txdac(): txdac=0, Set txbe=0x0, txbe_r5=0x0 [ 14.187358] set INT_MASK_CSR = 0xdff3ff3 [ 14.187360] ==> RTMPEnableRxTx [ 14.187365] ==> DMAIdle, GloCfg=0x50 [ 14.187468] <== WRITE DMA offset 0x208 = 0x75 [ 14.187469] <== RTMPEnableRxTx [ 14.187473] 0x1300 = 00064300 [ 14.187474] rt2800pci_toggle_irq(1):Check if PDMA is idle! [ 14.187477] ==> DMAIdle, GloCfg=0x75 [ 14.187478] rt2800pci_toggle_irq(2):Check if PDMA is idle! [ 14.187482] ==> DMAIdle, GloCfg=0x75 [ 22.024399] microcode: Microcode Update Driver: v2.00 removed. [ 39.110812] wlan1: authenticate with 7c:61:93:8a:19:d1 [ 39.129434] wlan1: send auth to 7c:61:93:8a:19:d1 (try 1/3) [ 39.130985] wlan1: authenticated [ 39.139453] wlan1: associate with 7c:61:93:8a:19:d1 (try 1/3) [ 39.141822] wlan1: RX AssocResp from 7c:61:93:8a:19:d1 (capab=0x411 status=0 aid=1) [ 39.141849] ===>rt2800_sta_add:MT7630 [ 39.141872] ===>rt2800_sta_add:MT7630 wcid=33 [ 39.141874] Connect to AP MAC: 7c:61:93:8a:19:d1 WCID=33 [ 39.141884] BtAFHCtl: COEX AFH Start Ch = 0, AFH End Ch = 47, Channel = 1, CentralChannel = 1 [ 39.141886] SendAndesAFH: --> [ 39.141888] SendAndesAFH: LinkStatus = 1, BW = 1, Channel = 1, BssHashID = 1, PktLength = 20 [ 39.141891] AsicSendCmdToAndes not need Rsp!!! [ 39.141894] CmdUnit->u.ANDES.CmdPayload: ffff880215f976ac, len = 20 [ 39.141896] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.141910] 0x0010 : 01 00 00 00 [ 39.141916] AsicSendCmdToAndes: ffff88021440e220, len = 24 [ 39.141917] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.141931] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.141939] Buf: ffff88021440e220, len = 24 [ 39.141940] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.141953] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.141963] pPacket->data: ffff880213b26ec0, len = 20 [ 39.141964] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.141977] 0x0010 : 01 00 00 00 [ 39.141983] PCIKickOutCmd (TxCpuIdx = 1) [ 39.141985] SendAndesAFH: <-- [ 39.141987] SendAndesWLANStatus: --> [ 39.141990] SendAndesWLANStatus: CoexOperation = 4, WlanStatus = 15, PrivilegeTime = 0, BssHashID = 1, PktLength = 16 [ 39.141993] AsicSendCmdToAndes not need Rsp!!! [ 39.141995] CmdUnit->u.ANDES.CmdPayload: ffff880215f976b0, len = 16 [ 39.141997] 0x0000 : 04 00 [ 39.142001] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.142002] 00 [ 39.142004] 00 15 00 00 00 00 00 00 00 01 00 00 00

[ 39.142034] AsicSendCmdToAndes: ffff88021440e220, len = 20 [ 39.142035] 0x0000 : 10 00 10 51 04 00 00 00 15 00 00 00 00 00 00 00 [ 39.142051] 0x0010 : 01 00 00 00 [ 39.142058] Buf: ffff88021440e220, len = 20 [ 39.142059] 0x0000 : 10 00 10 51 04 00 00 00 15 00 00 00 00 00 00 00 [ 39.142076] 0x0010 : 01 00 00 00 [ 39.142083] pPacket->data: ffff880213b26d00, len = 16 [ 39.142085] 0x0000 : 04 00 00 00 15 00 00 00 00 00 00 00 01 00 00 00

[ 39.142101] PCIKickOutCmd (TxCpuIdx = 2) [ 39.142118] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.147610] BtAFHCtl: COEX AFH Start Ch = 0, AFH End Ch = 47, Channel = 1, CentralChannel = 1 [ 39.147612] SendAndesAFH: --> [ 39.147615] SendAndesAFH: LinkStatus = 1, BW = 1, Channel = 1, BssHashID = 1, PktLength = 20 [ 39.147617] AsicSendCmdToAndes not need Rsp!!! [ 39.147619] CmdUnit->u.ANDES.CmdPayload: ffff880215f976ac, len = 20 [ 39.147620] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.147634] 0x0010 : 01 00 00 00 [ 39.147639] AsicSendCmdToAndes: ffff88021440e220, len = 24 [ 39.147640] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.147653] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.147661] Buf: ffff88021440e220, len = 24 [ 39.147662] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.147675] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.147684] pPacket->data: ffff880213b26b40, len = 20 [ 39.147685] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.147698] 0x0010 : 01 00 00 00 [ 39.147704] PCIKickOutCmd (TxCpuIdx = 3) [ 39.147705] SendAndesAFH: <-- [ 39.147718] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.152785] wlan1: associated [ 219.767853] wlan1: deauthenticating from 7c:61:93:8a:19:d1 by local choice (Reason: 3=DEAUTH_LEAVING) [ 219.781888] ===>rt2800_sta_remove:MT7630 [ 219.781970] BUG: unable to handle kernel NULL pointer dereference at (null) [ 219.782054] IP: < (null)> [ 219.782100] PGD 21522a067 PUD 214416067 PMD 0 [ 219.782149] Oops: 0010 [#1] SMP [ 219.782180] Modules linked in: mt7630e(O) [last unloaded: microcode] [ 219.782249] CPU: 0 PID: 1171 Comm: NetworkManager Tainted: G O 4.1.0-gentoo-VGA0-KMS #1 [ 219.782323] Hardware name: ASUSTeK COMPUTER INC. X550CA/X550CA, BIOS X550CA.300 03/24/2014 [ 219.782389] task: ffff8802147d8710 ti: ffff88021530c000 task.ti: ffff88021530c000 [ 219.782448] RIP: 0010:[<0000000000000000>] <
(null)>
[ 219.782513] RSP: 0018:ffff88021530f730 EFLAGS: 00010202 [ 219.782553] RAX: ffffffff81622f80 RBX: ffff880204006500 RCX: ffff880204006570 [ 219.782609] RDX: 0000000000000004 RSI: ffff88021530f744 RDI: ffff880204006500 [ 219.782665] RBP: 0000000000080004 R08: 0000000000017780 R09: ffff88021ee17780 [ 219.782721] R10: ffffffff810f6b82 R11: ffffea0008549600 R12: ffff8802145c9240 [ 219.782777] R13: ffff880204006570 R14: 0000000000000000 R15: ffff88021516e780 [ 219.782834] FS: 00007f2d174fc780(0000) GS:ffff88021ee00000(0000) knlGS:0000000000000000 [ 219.782897] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 219.782942] CR2: 0000000000000000 CR3: 0000000214415000 CR4: 00000000001407f0 [ 219.782997] Stack: [ 219.783008] ffffffffa001fb4c ffff880210d46f00 00000000a0036780 ffff880215258810 [ 219.783086] ffff8802145c9240 0000000000000021 ffff88021516e780 0000000000000001 [ 219.783164] ffffffffa002bd95 0000000000000002 ffff880215258000 ffff88021516e780 [ 219.783242] Call Trace: [ 219.783270] [] ? Set_BtDump_Proc+0xac/0x1c0 [mt7630e] [ 219.783328] [] ? rt2800_sta_remove+0x45/0x100 [mt7630e] [ 219.783386] [] ? sta_info_move_state+0x25c/0x400 [ 219.783438] [] ? sta_info_destroy_part2+0x6b/0x1e0 [ 219.783495] [] ? __sta_info_flush+0xf3/0x190 [ 219.783543] [] ? ieee80211_set_disassoc+0xb0/0x390 [ 219.783595] [] ? ieee80211_mgd_deauth+0xcb/0x1e0 [ 219.783645] [] ? cfg80211_mlme_deauth+0x69/0x80 [ 219.783694] [] ? cfg80211_mlme_down+0x56/0x60 [ 219.783741] [] ? cfg80211_disconnect+0xfd/0x110 [ 219.783792] [] ? cfg80211_leave+0x21/0x30 [ 219.783837] [] ? cfg80211_netdev_notifier_call+0x32b/0x4b0 [ 219.783898] [] ? notifier_call_chain+0x46/0x70 [ 219.783947] [] ? dev_close_many+0x3a/0xc0 [ 219.783993] [] ? dev_close_many+0x81/0x120 [ 219.784039] [] ? dev_close+0x3f/0x60 [ 219.784081] [] ? cfg80211_shutdown_all_interfaces+0x3d/0xb0 [ 219.786027] [] ? cfg80211_rfkill_set_block+0x25/0x30 [ 219.787952] [] ? rfkill_set_block+0x88/0x130 [ 219.789845] [] ? rfkill_fop_write+0xcb/0x170 [ 219.791730] [] ? vfs_write+0x1e/0xe0 [ 219.793580] [] ? vfs_write+0x97/0x180 [ 219.795435] [] ? fd_install+0x15/0x40 [ 219.797279] [] ? SyS_write+0x3d/0xb0 [ 219.799105] [] ? system_call_fastpath+0x16/0x6e [ 219.800915] Code: Bad RIP value. [ 219.802706] RIP < (null)> [ 219.804497] RSP [ 219.806267] CR2: 0000000000000000 [ 219.808039] ---[ end trace 90b421db90627e4a ]---

Hoping this to help.

Le 23/06/2015 17:49, Jakub Kicinski a écrit :

Can you try to obtain a stack trace somehow? Either by disconnecting from the console (Ctrl-Alt-F4), by using netconsole or by connecting some serial device?

— Reply to this email directly or view it on GitHub https://github.com/kuba-moo/mt7630e/issues/15#issuecomment-114532221.

CaptainBloodz commented 9 years ago

FYI, the whole Xorg stack seems stuck and could not be restarted by stopping and restarting the xdm service (gentoo here), but terminal/console survived.

Le 26/06/2015 07:13, Luc Pierard de Maujouy a écrit :

Here's the thingie: Did it via following sequence nmcli r wifi on nmcli r wifi off

So I extracted data properly there could be some log from the 1st command nmcli r wifi on.

[ 4.792486] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1 pAd->WlanFunCtrl.word = 0x0, Reg-WlanFunCtrl=0xffff0143 [ 4.792492] WlanFunCtrl.word = 0xffff0143 [ 4.792548] MACVersion = 0x76502000 [ 4.792561] <== MT76x0_WLAN_ChipOnOff(): pAd->WlanFunCtrl.word = 0xffff0143, Reg->WlanFunCtrl=0xffff0143! [ 4.792580] MAC_version=0x76300002 [ 4.792589] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 7630, rev 0002 detected [ 4.794629] MAC: 54:35:30:bc:3f:2d [ 4.794636] MAC_version=0x76300002 [ 4.794638] RFIC =0x7630 [ 4.794643] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 7630 detected [ 4.794645] rt2x00dev->chip.rt = 0x7630 [ 4.794647] rt2x00dev->chip.rf = 0x7630 [ 4.794976] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 4.795659] -->RTMPAllocTxRxRingMemory [ 4.795668] CTRL Ring: total 512 bytes allocated [ 4.795670] <-- RTMPAllocTxRxRingMemory, Status=0 [ 4.968296] mt7630e 0000:02:00.0 wlan1: renamed from wlan0 [ 5.704193] random: nonblocking pool is initialized [ 6.629720] cfg80211: Calling CRDA to update world regulatory domain [ 7.464252] cfg80211: World regulatory domain updated: [ 7.464258] cfg80211: DFS Master region: unset [ 7.464261] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time) [ 7.464267] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464270] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464273] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464277] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A) [ 7.464281] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s) [ 7.464284] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s) [ 7.464286] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A) [ 7.464289] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A) [ 8.927431] EXT4-fs (sda1): re-mounted. Opts: (null) [ 9.180387] Adding 8184828k swap on /dev/sda5. Priority:-1 extents:1 across:8184828k FS [ 14.080399] r8169 0000:03:00.2 eth0: link down [ 14.081857] ===>rt2x00lib_start [ 14.081882] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1 pAd->WlanFunCtrl.word = 0xffff0143, Reg-WlanFunCtrl=0xffff0143 [ 14.081883] Reset(1) WlanFunCtrl.word = 0xffff014f [ 14.081934] Reset(2) WlanFunCtrl.word = 0xffff0143 [ 14.081985] WlanFunCtrl.word = 0xffff0143 [ 14.082038] MACVersion = 0x76502000 [ 14.082048] <== MT76x0_WLAN_ChipOnOff(): pAd->WlanFunCtrl.word = 0xffff0143, Reg->WlanFunCtrl=0xffff0143! [ 14.082105] ASIC is ready [ 14.082114] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'MT7650E234.bin' [ 14.094689] ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 112.3 [ 14.094707] rt2800_load_firmware: COM_REG0(0x730) = 0x1 [ 14.107491] ===>rt2x00lib_enable_radio [ 14.107530] ===>rt2800_enable_radio: [ 14.107874] reg FCE_PSE_CTRL =x0 [ 14.107892] rt2800_init_bbp(): Init BBP Registers MT7630 [ 14.108900] BBP version = f000f200 [ 14.108901] rt2800_init_bbp(): Init BBP Registers MT7630 [ 14.108944] rt2800_init_bbp(): Init BBP Registers MT7630 complete [ 14.108945] ==>rt2800lib_init_queues [ 14.108947] -->TX_RING: Base=0x0x00000000d48e5000, Cnt=64 [ 14.108949] -->TX_RING: Base=0x0x00000000d3848000, Cnt=64 [ 14.108950] -->TX_RING: Base=0x0x00000000d5328000, Cnt=64 [ 14.108951] -->TX_RING: Base=0x0x00000000d3900000, Cnt=64 [ 14.108953] -->RX_RING: Base=0x0x00000000d4a84000, Cnt=128 [ 14.108954] AsicInitTxRxRing [ 14.108956] -->TX_RING_CTRL: Base=0xd53fa000, Cnt=32! [ 14.108963] <===rt2800lib_init_queues [ 14.108964] MAC 54:35:30:bc:3f:2d [ 14.108977] rt2800_enable_radio -7630 Dual antenna mode [ 14.127390] rt2800_init_rfcsr(): Init RF Registers MT7630 [ 14.128003] rt2800_init_rfcsr: B0.R22 = 0x73 [ 14.128025] rt2800_init_rfcsr(): Init RF Registers MT7630 complete [ 14.148534] --> AsicCheckCommanFail2 Timeout Command = 2, CmdStatus= 0x0 [ 14.169037] --> AsicCheckCommanFail2 Timeout Command = 3, CmdStatus= 0x0 [ 14.169051] rtmp_bbp_set_rxpath(): rxpath=1, Set AGC1_R0=0x21400, agc_r0=0x21400 [ 14.169054] rtmp_bbp_set_txdac(): txdac=0, Set txbe=0x0, txbe_r5=0x0 [ 14.187358] set INT_MASK_CSR = 0xdff3ff3 [ 14.187360] ==> RTMPEnableRxTx [ 14.187365] ==> DMAIdle, GloCfg=0x50 [ 14.187468] <== WRITE DMA offset 0x208 = 0x75 [ 14.187469] <== RTMPEnableRxTx [ 14.187473] 0x1300 = 00064300 [ 14.187474] rt2800pci_toggle_irq(1):Check if PDMA is idle! [ 14.187477] ==> DMAIdle, GloCfg=0x75 [ 14.187478] rt2800pci_toggle_irq(2):Check if PDMA is idle! [ 14.187482] ==> DMAIdle, GloCfg=0x75 [ 22.024399] microcode: Microcode Update Driver: v2.00 removed. [ 39.110812] wlan1: authenticate with 7c:61:93:8a:19:d1 [ 39.129434] wlan1: send auth to 7c:61:93:8a:19:d1 (try 1/3) [ 39.130985] wlan1: authenticated [ 39.139453] wlan1: associate with 7c:61:93:8a:19:d1 (try 1/3) [ 39.141822] wlan1: RX AssocResp from 7c:61:93:8a:19:d1 (capab=0x411 status=0 aid=1) [ 39.141849] ===>rt2800_sta_add:MT7630 [ 39.141872] ===>rt2800_sta_add:MT7630 wcid=33 [ 39.141874] Connect to AP MAC: 7c:61:93:8a:19:d1 WCID=33 [ 39.141884] BtAFHCtl: COEX AFH Start Ch = 0, AFH End Ch = 47, Channel = 1, CentralChannel = 1 [ 39.141886] SendAndesAFH: --> [ 39.141888] SendAndesAFH: LinkStatus = 1, BW = 1, Channel = 1, BssHashID = 1, PktLength = 20 [ 39.141891] AsicSendCmdToAndes not need Rsp!!! [ 39.141894] CmdUnit->u.ANDES.CmdPayload: ffff880215f976ac, len = 20 [ 39.141896] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.141910] 0x0010 : 01 00 00 00 [ 39.141916] AsicSendCmdToAndes: ffff88021440e220, len = 24 [ 39.141917] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.141931] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.141939] Buf: ffff88021440e220, len = 24 [ 39.141940] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.141953] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.141963] pPacket->data: ffff880213b26ec0, len = 20 [ 39.141964] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.141977] 0x0010 : 01 00 00 00 [ 39.141983] PCIKickOutCmd (TxCpuIdx = 1) [ 39.141985] SendAndesAFH: <-- [ 39.141987] SendAndesWLANStatus: --> [ 39.141990] SendAndesWLANStatus: CoexOperation = 4, WlanStatus = 15, PrivilegeTime = 0, BssHashID = 1, PktLength = 16 [ 39.141993] AsicSendCmdToAndes not need Rsp!!! [ 39.141995] CmdUnit->u.ANDES.CmdPayload: ffff880215f976b0, len = 16 [ 39.141997] 0x0000 : 04 00 [ 39.142001] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.142002] 00 [ 39.142004] 00 15 00 00 00 00 00 00 00 01 00 00 00

[ 39.142034] AsicSendCmdToAndes: ffff88021440e220, len = 20 [ 39.142035] 0x0000 : 10 00 10 51 04 00 00 00 15 00 00 00 00 00 00 00 [ 39.142051] 0x0010 : 01 00 00 00 [ 39.142058] Buf: ffff88021440e220, len = 20 [ 39.142059] 0x0000 : 10 00 10 51 04 00 00 00 15 00 00 00 00 00 00 00 [ 39.142076] 0x0010 : 01 00 00 00 [ 39.142083] pPacket->data: ffff880213b26d00, len = 16 [ 39.142085] 0x0000 : 04 00 00 00 15 00 00 00 00 00 00 00 01 00 00 00

[ 39.142101] PCIKickOutCmd (TxCpuIdx = 2) [ 39.142118] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.147610] BtAFHCtl: COEX AFH Start Ch = 0, AFH End Ch = 47, Channel = 1, CentralChannel = 1 [ 39.147612] SendAndesAFH: --> [ 39.147615] SendAndesAFH: LinkStatus = 1, BW = 1, Channel = 1, BssHashID = 1, PktLength = 20 [ 39.147617] AsicSendCmdToAndes not need Rsp!!! [ 39.147619] CmdUnit->u.ANDES.CmdPayload: ffff880215f976ac, len = 20 [ 39.147620] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.147634] 0x0010 : 01 00 00 00 [ 39.147639] AsicSendCmdToAndes: ffff88021440e220, len = 24 [ 39.147640] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.147653] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.147661] Buf: ffff88021440e220, len = 24 [ 39.147662] 0x0000 : 14 00 10 51 03 00 00 00 01 00 00 00 01 00 00 00 [ 39.147675] 0x0010 : 01 00 00 00 01 00 00 00 [ 39.147684] pPacket->data: ffff880213b26b40, len = 20 [ 39.147685] 0x0000 : 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 [ 39.147698] 0x0010 : 01 00 00 00 [ 39.147704] PCIKickOutCmd (TxCpuIdx = 3) [ 39.147705] SendAndesAFH: <-- [ 39.147718] ==>INT_SOURCE_CSR_7630_HCCA_DMA_DONE [ 39.152785] wlan1: associated [ 219.767853] wlan1: deauthenticating from 7c:61:93:8a:19:d1 by local choice (Reason: 3=DEAUTH_LEAVING) [ 219.781888] ===>rt2800_sta_remove:MT7630 [ 219.781970] BUG: unable to handle kernel NULL pointer dereference at (null) [ 219.782054] IP: < (null)> [ 219.782100] PGD 21522a067 PUD 214416067 PMD 0 [ 219.782149] Oops: 0010 [#1] SMP [ 219.782180] Modules linked in: mt7630e(O) [last unloaded: microcode] [ 219.782249] CPU: 0 PID: 1171 Comm: NetworkManager Tainted: G O 4.1.0-gentoo-VGA0-KMS #1 [ 219.782323] Hardware name: ASUSTeK COMPUTER INC. X550CA/X550CA, BIOS X550CA.300 03/24/2014 [ 219.782389] task: ffff8802147d8710 ti: ffff88021530c000 task.ti: ffff88021530c000 [ 219.782448] RIP: 0010:[<0000000000000000>] <
(null)>
[ 219.782513] RSP: 0018:ffff88021530f730 EFLAGS: 00010202 [ 219.782553] RAX: ffffffff81622f80 RBX: ffff880204006500 RCX: ffff880204006570 [ 219.782609] RDX: 0000000000000004 RSI: ffff88021530f744 RDI: ffff880204006500 [ 219.782665] RBP: 0000000000080004 R08: 0000000000017780 R09: ffff88021ee17780 [ 219.782721] R10: ffffffff810f6b82 R11: ffffea0008549600 R12: ffff8802145c9240 [ 219.782777] R13: ffff880204006570 R14: 0000000000000000 R15: ffff88021516e780 [ 219.782834] FS: 00007f2d174fc780(0000) GS:ffff88021ee00000(0000) knlGS:0000000000000000 [ 219.782897] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 219.782942] CR2: 0000000000000000 CR3: 0000000214415000 CR4: 00000000001407f0 [ 219.782997] Stack: [ 219.783008] ffffffffa001fb4c ffff880210d46f00 00000000a0036780 ffff880215258810 [ 219.783086] ffff8802145c9240 0000000000000021 ffff88021516e780 0000000000000001 [ 219.783164] ffffffffa002bd95 0000000000000002 ffff880215258000 ffff88021516e780 [ 219.783242] Call Trace: [ 219.783270] [] ? Set_BtDump_Proc+0xac/0x1c0 [mt7630e] [ 219.783328] [] ? rt2800_sta_remove+0x45/0x100 [mt7630e] [ 219.783386] [] ? sta_info_move_state+0x25c/0x400 [ 219.783438] [] ? sta_info_destroy_part2+0x6b/0x1e0 [ 219.783495] [] ? __sta_info_flush+0xf3/0x190 [ 219.783543] [] ? ieee80211_set_disassoc+0xb0/0x390 [ 219.783595] [] ? ieee80211_mgd_deauth+0xcb/0x1e0 [ 219.783645] [] ? cfg80211_mlme_deauth+0x69/0x80 [ 219.783694] [] ? cfg80211_mlme_down+0x56/0x60 [ 219.783741] [] ? cfg80211_disconnect+0xfd/0x110 [ 219.783792] [] ? cfg80211_leave+0x21/0x30 [ 219.783837] [] ? cfg80211_netdev_notifier_call+0x32b/0x4b0 [ 219.783898] [] ? notifier_call_chain+0x46/0x70 [ 219.783947] [] ? dev_close_many+0x3a/0xc0 [ 219.783993] [] ? dev_close_many+0x81/0x120 [ 219.784039] [] ? dev_close+0x3f/0x60 [ 219.784081] [] ? cfg80211_shutdown_all_interfaces+0x3d/0xb0 [ 219.786027] [] ? cfg80211_rfkill_set_block+0x25/0x30 [ 219.787952] [] ? rfkill_set_block+0x88/0x130 [ 219.789845] [] ? rfkill_fop_write+0xcb/0x170 [ 219.791730] [] ? vfs_write+0x1e/0xe0 [ 219.793580] [] ? vfs_write+0x97/0x180 [ 219.795435] [] ? fd_install+0x15/0x40 [ 219.797279] [] ? SyS_write+0x3d/0xb0 [ 219.799105] [] ? system_call_fastpath+0x16/0x6e [ 219.800915] Code: Bad RIP value. [ 219.802706] RIP < (null)> [ 219.804497] RSP [ 219.806267] CR2: 0000000000000000 [ 219.808039] ---[ end trace 90b421db90627e4a ]---

Hoping this to help.

Le 23/06/2015 17:49, Jakub Kicinski a écrit :

Can you try to obtain a stack trace somehow? Either by disconnecting from the console (Ctrl-Alt-F4), by using netconsole or by connecting some serial device?

— Reply to this email directly or view it on GitHub https://github.com/kuba-moo/mt7630e/issues/15#issuecomment-114532221.

CaptainBloodz commented 9 years ago

Identical with 4.1.0, 4,1,1, 4,1,1-r1 Any news?

s094392 commented 8 years ago

similar issue with 4.1.4-1-ARCH

euspectre commented 8 years ago

I experience this issue as well on ROSA R6 Linux, x64, kernel 4.1.3. The PCI IDs of the device are 14c3-7630-103c-197c.

The problem shows up when I try to reboot the system or when I unload mt7630e (modprobe -r mt7630e).

Here is the crash info:

kernel: wlan0: deauthenticating from c0:a0:bb:20:84:0c by local choice (Reason: 3=DEAUTH_LEAVING)
kernel: ===>rt2800_sta_remove:MT7630
kernel: BUG: unable to handle kernel NULL pointer dereference at           (null)
kernel: IP: [<          (null)>]           (null)
kernel: PGD 194503067 PUD 19ed70067 PMD 0 
kernel: Oops: 0010 [#1] PREEMPT SMP 
kernel: Modules linked in: mt76xx(O) ctr ccm arc4 mt7630e(O) mac80211 eeprom_93cx6 crc_ccitt bnep bluetooth nf_log_ipv4 nf_log_common xt_LOG xt_recent iptable_nat nf_nat_ipv4 xt_comment ipt_REJECT nf_reject_ipv4 xt_addrtype bridge stp llc xt_mark iptable_mangle xt_tcpudp xt_CT iptable_raw xt_multiport nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_nat_tftp nf_nat_snmp_basic nf_conntrack_snmp nf_nat_sip nf_nat_pptp nf_nat_proto_gre nf_nat_irc nf_nat_h323 nf_nat_ftp nf_nat_amanda ts_kmp nf_conntrack_amanda nf_nat nf_conntrack_sane nf_conntrack_tftp nf_conntrack_sip nf_conntrack_proto_udplite nf_conntrack_proto_sctp nf_conntrack_pptp nf_conntrack_proto_gre nf_conntrack_netlink nfnetlink nf_conntrack_netbios_ns nf_conntrack_broadcast nf_conntrack_irc nf_conntrack_h323 nf_conntrack_ftp nf_conntrack
kernel:  l2tp_ppp l2tp_core pppox ip6_udp_tunnel udp_tunnel ppp_generic iptable_filter slhc ip_tables x_tables af_packet cfg80211 rfkill msr hwmon_vid nouveau mxm_wmi iTCO_wdt iTCO_vendor_support snd_hda_codec_via snd_hda_codec_generic snd_hda_codec_hdmi coretemp snd_hda_intel kvm_intel snd_hda_controller video kvm serio_raw crc32c_intel snd_hda_codec e1000e snd_hda_core ttm snd_hwdep drm_kms_helper i2c_i801 drm i2c_algo_bit i7core_edac asus_atk0110 edac_core snd_pcm snd_timer snd ptp pps_core i5500_temp lpc_ich soundcore acpi_cpufreq shpchp sch_fq_codel hid_generic usbhid hid sr_mod ide_pci_generic ide_core uhci_hcd ata_generic xhci_pci firewire_ohci firewire_core crc_itu_t ehci_pci xhci_hcd ata_piix ehci_hcd pata_acpi wmi binfmt_misc ipv6 autofs4
kernel: CPU: 1 PID: 18183 Comm: wpa_supplicant Tainted: G          IO    4.1.3-nrj-desktop-1rosa-x86_64 #1
kernel: Hardware name: System manufacturer System Product Name/Rampage III GENE, BIOS 0704    09/21/2010
kernel: task: ffff8801aae18000 ti: ffff880094cd8000 task.ti: ffff880094cd8000
kernel: RIP: 0010:[<0000000000000000>]  [<          (null)>]           (null)
kernel: RSP: 0018:ffff880094cdb4a0  EFLAGS: 00010202
kernel: RAX: ffffffff81826280 RBX: 0000000000080004 RCX: ffff8800989fa870
kernel: RDX: 0000000000000004 RSI: ffff880094cdb4b4 RDI: ffff8800989fa800
kernel: RBP: ffff880094cdb4d8 R08: 000000000001a8c0 R09: ffffffff811e88ff
kernel: R10: ffff8801b925a8c0 R11: ffffea0002e95400 R12: ffff8800989fa800
kernel: R13: ffff88009cc413a0 R14: ffff8800989fa870 R15: 0000000000000002
kernel: FS:  00007ff2bcb7b700(0000) GS:ffff8801b9240000(0000) knlGS:0000000000000000
kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
kernel: CR2: 0000000000000000 CR3: 00000000a2c28000 CR4: 00000000000007e0
kernel: Stack:
kernel:  ffffffffc0942809 ffff88009f9a1fd4 00000000c0944220 ffff88009cc413a0
kernel:  0000000000000021 ffff88009cc406a0 ffff8800b9e94840 ffff880094cdb508
kernel:  ffffffffc094f295 ffff8800b9e94840 ffff880036be9000 0000000000000003
kernel: Call Trace:
kernel:  [] ? Set_BtDump_Proc+0xb9/0x1e0 [mt7630e]
kernel:  [] rt2800_sta_remove+0x55/0x110 [mt7630e]
kernel:  [] rt2x00mac_sta_remove+0x2a/0x30 [mt7630e]
kernel:  [] sta_info_move_state+0x585/0x770 [mac80211]
kernel:  [] __sta_info_destroy_part2+0x7b/0x2f0 [mac80211]
kernel:  [] __sta_info_flush+0xf5/0x1b0 [mac80211]
kernel:  [] ieee80211_set_disassoc+0xba/0x3e0 [mac80211]
kernel:  [] ieee80211_mgd_deauth+0xd8/0x290 [mac80211]
kernel:  [] ieee80211_deauth+0x18/0x20 [mac80211]
kernel:  [] cfg80211_mlme_deauth+0x8f/0x190 [cfg80211]
kernel:  [] ? autofs_mount+0x3/0x20 [autofs4]
kernel:  [] nl80211_deauthenticate+0xde/0x120 [cfg80211]
kernel:  [] genl_family_rcv_msg+0x19a/0x390
kernel:  [] ? genl_family_rcv_msg+0x390/0x390
kernel:  [] genl_rcv_msg+0x79/0xc0
kernel:  [] netlink_rcv_skb+0xb9/0xe0
kernel:  [] genl_rcv+0x2c/0x40
kernel:  [] netlink_unicast+0x108/0x1a0
kernel:  [] netlink_sendmsg+0x505/0x620
kernel:  [] ? tomoyo_socket_sendmsg_permission+0x24/0xb0
kernel:  [] sock_sendmsg+0x3d/0x50
kernel:  [] ___sys_sendmsg+0x2a3/0x2b0
kernel:  [] ? ___sys_recvmsg+0x162/0x1f0
kernel:  [] ? recalc_sigpending+0x17/0x60
kernel:  [] ? __set_task_blocked+0x32/0x80
kernel:  [] ? __set_current_blocked+0x49/0x50
kernel:  [] ? fpu_finit+0x22/0x40
kernel:  [] ? signal_setup_done+0x65/0xb0
kernel:  [] ? init_fpu+0x51/0xb0
kernel:  [] ? __restore_xstate_sig+0x298/0x6c0
kernel:  [] __sys_sendmsg+0x42/0x80
kernel:  [] SyS_sendmsg+0x12/0x20
kernel:  [] system_call_fastpath+0x16/0x75
kernel: Code:  Bad RIP value.
kernel: RIP  [<          (null)>]           (null)
kernel:  RSP 
kernel: CR2: 0000000000000000
kernel: ---[ end trace d47518f9b689155b ]---

I have rebuilt the driver with debug info and found that Set_BtDump_Proc+0xb9 corresponds to rt2x00/mt_linux.c:2121, namely:

for ( offset = 0x0 ; offset < 0xFFFF ; offset+=4 )
{
    //memset(buf, 0, 4);
    buf = 0;
    RTMP_IO_READ32(rt2x00dev, 0x80000+offset, &buf);    
    //printk("0x%X:= 0x%x :\n",0x80000+offset, buf); 
    file->f_op->write(file, (u8 *) &buf, 4, &file->f_pos); // !!! NULL ptr dereference is here
}

The NULL pointer dereference happens when the driver tries to call file->f_op->write, which is NULL at that point for some reason.

Looking through Set_BtDump_Proc(), I suppose this function is not needed at all. It only dumps data to a file (a bad practice in the kernel, anyway) and that file seems not to be used anywhere else.

Commenting out the call to Set_BtDump_Proc() in rt2800_sta_remove() fixed this issue for me. But other issues appeared, I will file them separately.

saintfrater commented 8 years ago

You probably missed the line 2708 from rt2800lib.c which is also a call to Set_BtDump_Proc()...

but even I comment it, I still get freeze on unload as you mention in further issue #19

my uname -a

       4.1.0-1-amd64 #1 SMP Debian 4.1.3-1 (2015-08-03) x86_64 GNU/Linux 
xiroV commented 8 years ago

Same issue applies to me, also on kernel 4.1.0. I'm not sure on what event. I had to do a hard restart a couple of times due to the freezing, one of the times after 5 minutes of use, other times a few seconds after the boot was done. Not sure if that's any help.

jekyll86 commented 8 years ago

Hi, I have same problem with Ubuntu 14.04 and kernel 3.19. When I try to manage wifi the system freezes, I can't get a console, I have to force shutdown with power button.

cdutsov commented 8 years ago

same issue here. The computer freezes when I try modprobe -r mt7630e. After a long uptime (above 1 week) the wi fi just stops and I have to restart.

Linux rambo 4.0.5-1-ARCH #1 SMP PREEMPT Sat Jun 6 18:37:49 CEST 2015 x86_64 GNU/Linux