blob: d86ca2c99863feeac9a0deb3a262c7758290f9ee [file] [log] [blame]
developer9237f442024-06-14 17:13:04 +08001From 947b71bb7b65824acf8dbaa984ead4ce638f4005 Mon Sep 17 00:00:00 2001
developer66e89bc2024-04-23 14:50:01 +08002From: Shayne Chen <shayne.chen@mediatek.com>
3Date: Thu, 26 Oct 2023 17:27:43 +0800
developer9237f442024-06-14 17:13:04 +08004Subject: [PATCH 066/116] mtk: wifi: mt76: mt7996: do not report netdev stats
developer66e89bc2024-04-23 14:50:01 +08005 on monitor vif
6
7This fixes the following NULL pointer crash when enabling monitor mode:
8[ 205.593158] Call trace:
9[ 205.595597] mt7996_mcu_rx_event+0x4a0/0x6e8 [mt7996e]
10[ 205.600725] mt7996_queue_rx_skb+0x6e4/0xfa0 [mt7996e]
11[ 205.605851] mt76_dma_rx_poll+0x384/0x420 [mt76]
12[ 205.610459] __napi_poll+0x38/0x1c0
13[ 205.613935] napi_threaded_poll+0x80/0xe8
14[ 205.617934] kthread+0x124/0x128
15
developer66e89bc2024-04-23 14:50:01 +080016Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
17---
18 mt7996/mcu.c | 3 +++
19 1 file changed, 3 insertions(+)
20
21diff --git a/mt7996/mcu.c b/mt7996/mcu.c
developer9237f442024-06-14 17:13:04 +080022index a238fdd..b886644 100644
developer66e89bc2024-04-23 14:50:01 +080023--- a/mt7996/mcu.c
24+++ b/mt7996/mcu.c
25@@ -540,6 +540,9 @@ static inline void __mt7996_stat_to_netdev(struct mt76_phy *mphy,
26 drv_priv);
27 wdev = ieee80211_vif_to_wdev(vif);
28
29+ if (vif->type == NL80211_IFTYPE_MONITOR)
30+ return;
31+
32 dev_sw_netstats_tx_add(wdev->netdev, tx_packets, tx_bytes);
33 dev_sw_netstats_rx_add(wdev->netdev, rx_packets, rx_bytes);
34 }
35--
developer9237f442024-06-14 17:13:04 +0800362.18.0
developer66e89bc2024-04-23 14:50:01 +080037