2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/drivers/net/wireless/mediatek/mt76
Jakub Kicinski a60558644e wifi: mt76: move napi_enable() from under BH
mt76 does a lot of:

  local_bh_disable();
  napi_enable(...napi);
  napi_schedule(...napi);
  local_bh_enable();

local_bh_disable() is not a real lock, its most likely taken
because napi_schedule() requires that we invoke softirqs at
some point. napi_enable() needs to take a mutex, so move it
from under the BH protection.

Fixes: 413f0271f3 ("net: protect NAPI enablement with netdev_lock()")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/dcfd56bc-de32-4b11-9e19-d8bd1543745d@stanley.mountain
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20250124031841.1179756-8-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-01-27 14:30:50 -08:00
..
mt76x0 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt76x2 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7603 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7615 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7915 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7921 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7925 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt7996 wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
agg-rx.c wifi: mt76: Remove redundant assignment to variable tidno 2024-02-22 09:55:19 +01:00
channel.c wifi: mt76: add multi-radio remain_on_channel functions 2025-01-14 13:42:29 +01:00
debugfs.c wifi: mt76: un-embedd netdev from mt76_dev 2024-06-20 19:30:00 -07:00
dma.c wifi: mt76: do not hold queue lock during initial rx buffer alloc 2025-01-14 13:34:35 +01:00
dma.h wifi: mt76: un-embedd netdev from mt76_dev 2024-06-20 19:30:00 -07:00
eeprom.c wifi: mt76: use chainmask for power delta calculation 2023-12-07 18:50:21 +01:00
Kconfig
mac80211.c wifi: mt76: add multi-radio remain_on_channel functions 2025-01-14 13:42:29 +01:00
Makefile wifi: mt76: add chanctx functions for multi-channel phy support 2025-01-14 13:42:28 +01:00
mcu.c wifi: mt76: do not increase mcu skb refcount if retry is not supported 2024-09-18 16:34:00 +03:00
mmio.c wifi: mt76: move wed common utilities in wed.c 2024-02-22 09:55:18 +01:00
mt76_connac2_mac.h wifi: mt76: connac: add support for IEEE 802.11 fragmentation 2024-09-06 14:23:06 +02:00
mt76_connac3_mac.c wifi: mt76: Fix EHT NSS radiotap reporting. 2025-01-13 11:21:54 +01:00
mt76_connac3_mac.h wifi: mt76: connac: fix checksum offload fields of connac3 RXD 2024-09-06 11:14:31 +02:00
mt76_connac_mac.c wifi: mt76: connac: adjust phy capabilities based on band constraints 2025-01-14 13:42:30 +01:00
mt76_connac_mcu.c wifi: mt76: mt7925: add handler to hif suspend/resume event 2025-01-14 13:42:30 +01:00
mt76_connac_mcu.h wifi: mt76: mt7925: add handler to hif suspend/resume event 2025-01-14 13:42:30 +01:00
mt76_connac.h wifi: mt76: connac: adjust phy capabilities based on band constraints 2025-01-14 13:42:30 +01:00
mt76.h wifi: mt76: add multi-radio remain_on_channel functions 2025-01-14 13:42:29 +01:00
mt76x02_beacon.c
mt76x02_debugfs.c
mt76x02_dfs.c wifi: mac80211: handle ieee80211_radar_detected() for MLO 2024-09-06 13:01:05 +02:00
mt76x02_dfs.h
mt76x02_dma.h
mt76x02_eeprom.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
mt76x02_eeprom.h
mt76x02_mac.c
mt76x02_mac.h
mt76x02_mcu.c
mt76x02_mcu.h
mt76x02_mmio.c wifi: mt76: move napi_enable() from under BH 2025-01-27 14:30:50 -08:00
mt76x02_phy.c
mt76x02_phy.h
mt76x02_regs.h
mt76x02_trace.c
mt76x02_trace.h
mt76x02_txrx.c
mt76x02_usb_core.c wifi: mt76: partially move channel change code to core 2024-09-06 11:14:37 +02:00
mt76x02_usb_mcu.c wifi: fill in MODULE_DESCRIPTION()s for mt76 drivers 2024-01-31 18:32:33 +02:00
mt76x02_usb.h
mt76x02_util.c wifi: mt76: initialize more wcid fields mt76_wcid_init 2025-01-14 13:34:37 +01:00
mt76x02.h
mt792x_acpi_sar.c wifi: mt76: mt792x: update the country list of EU for ACPI SAR 2024-02-22 09:55:19 +01:00
mt792x_acpi_sar.h wifi: mt76: mt7921: support 5.9/6GHz channel config in acpi 2023-12-07 18:50:19 +01:00
mt792x_core.c wifi: mt76: mt7921: introduce CSA support 2025-01-14 13:34:35 +01:00
mt792x_debugfs.c
mt792x_dma.c wifi: mt76: un-embedd netdev from mt76_dev 2024-06-20 19:30:00 -07:00
mt792x_mac.c wifi: mt76: mt7925: Update mt792x_rx_get_wcid for per-link STA 2025-01-14 13:34:35 +01:00
mt792x_regs.h wifi: mt76: mt7925: update PCIe DMA settings 2024-02-22 09:55:17 +01:00
mt792x_trace.c
mt792x_trace.h
mt792x_usb.c wifi: mac80211: inform the low level if drv_stop() is a suspend 2024-06-26 10:25:46 +02:00
mt792x.h wifi: mt76: mt7925e: fix too long of wifi resume time 2025-01-14 13:42:30 +01:00
pci.c wifi: mt76: mt792x: fix scheduler interference in drv own process 2024-07-09 23:02:10 +02:00
scan.c wifi: mt76: add multi-radio remain_on_channel functions 2025-01-14 13:42:29 +01:00
sdio_txrx.c wifi: mt76: mt7921s: fix a potential firmware freeze during startup 2025-01-13 11:21:54 +01:00
sdio.c wifi: mt76: sdio: move mcu queue size check inside critical section 2024-05-02 12:44:51 +02:00
sdio.h
testmode.c wifi: mt76: fix tx packet loss when scanning on DBDC 2024-05-02 12:44:50 +02:00
testmode.h
trace.c
trace.h
tx.c wifi: mt76: add multi-radio support to tx scheduling 2025-01-14 13:42:29 +01:00
usb_trace.c
usb_trace.h
usb.c wifi: mt76: mt76u_vendor_request: Do not print error messages when -EPROTO 2025-01-14 13:34:18 +01:00
util.c wifi: mt76: remove dev->wcid_phy_mask 2025-01-14 13:42:28 +01:00
util.h
wed.c wifi: mt76: move wed common utilities in wed.c 2024-02-22 09:55:18 +01:00