FAILED: patch "[PATCH] wifi: mt76: mt7615: drop TXRX_NOTIFY on non-mmio buses" failed to apply to 5.15-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 5.15-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.15.y
git checkout FETCH_HEAD
git cherry-pick -x 39afc46c0243d10b7795e6e6cf4ae91f41732120
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2026072914-convent-flame-f173@gregkh' --subject-prefix 'PATCH 5.15.y' 'HEAD^..'
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 39afc46c0243d10b7795e6e6cf4ae91f41732120 Mon Sep 17 00:00:00 2001
From: Devin Wittmayer <[email protected]>
Date: Sat, 27 Jun 2026 12:13:36 -0700
Subject: [PATCH] wifi: mt76: mt7615: drop TXRX_NOTIFY on non-mmio buses
PKT_TYPE_TXRX_NOTIFY is an mmio-only event, but mt7615_rx_check() and mt7615_queue_rx_skb() dispatch it to mt7615_mac_tx_free() on every bus. mt7615_mac_tx_free() cleans the DMA tx queues with mt76_queue_tx_cleanup(), which calls queue_ops->tx_cleanup(). Only the mmio queue ops implement that callback; on the mt7663 USB and SDIO buses it is NULL, so a TXRX_NOTIFY there calls a NULL pointer in the RX worker. Same defect as the mt7921 and mt7925 patches in this series.
Drop the event on non-mmio buses via mt76_is_mmio(), as in commit 5683e1488aa9 ("wifi: mt76: connac: do not check WED status for non-mmio devices").
drivers/net/wireless/mediatek/mt76/mt7615/mac.c +6 -0
@@ -1601,6 +1601,8 @@ bool mt7615_rx_check(struct mt76_dev *mdev, void *data, int len)switch (type) {case PKT_TYPE_TXRX_NOTIFY : +if (!mt76_is_mmio (mdev)) +return false;mt7615_mac_tx_free (dev, data, len);return false;case PKT_TYPE_TXS :
@@ -1634,6 +1636,10 @@ void mt7615_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,dev_kfree_skb (skb);break ;case PKT_TYPE_TXRX_NOTIFY : +if (!mt76_is_mmio (mdev)) { +dev_kfree_skb (skb); +break ; + }mt7615_mac_tx_free (dev, skb->data, skb->len);dev_kfree_skb (skb);break ;
PATCH 1/1 wifi: mt76: mt7615: drop TXRX_NOTIFY on non-mmio buses
commit 39afc46c0243d10b7795e6e6cf4ae91f41732120 upstream.
PKT_TYPE_TXRX_NOTIFY is an mmio-only event, but mt7615_rx_check() and mt7615_queue_rx_skb() dispatch it to mt7615_mac_tx_free() on every bus. mt7615_mac_tx_free() cleans the DMA tx queues with mt76_queue_tx_cleanup(), which calls queue_ops->tx_cleanup(). Only the mmio queue ops implement that callback; on the mt7663 USB and SDIO buses it is NULL, so a TXRX_NOTIFY there calls a NULL pointer in the RX worker. Same defect as the mt7921 and mt7925 patches in this series.
Drop the event on non-mmio buses via mt76_is_mmio(), as in commit 5683e1488aa9 ("wifi: mt76: connac: do not check WED status for non-mmio devices").
[ No mt7615_rx_check() on this tree, so only the mt7615_queue_rx_skb()
hunk applies, and mt7615_mac_tx_free() takes the skb rather than (data, len), so the guard frees it here. ]
---
Compile-tested on v5.15.212; mt7615-common, mt7615e and mt7663u build. Not runtime-tested, I have no MT7663 and that is the only chip that reaches this path.
drivers/net/wireless/mediatek/mt76/mt7615/mac.c | 4 ++++ 1 file changed, 4 insertions(+)
drivers/net/wireless/mediatek/mt76/mt7615/mac.c +4 -0
@@ -1601,6 +1601,10 @@ void mt7615_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,dev_kfree_skb (skb);break ;case PKT_TYPE_TXRX_NOTIFY : +if (!mt76_is_mmio (mdev)) { +dev_kfree_skb (skb); +break ; + }mt7615_mac_tx_free (dev, skb);break ;case PKT_TYPE_RX_EVENT :
Signature · 1 line
2.55.0
Re: [PATCH 5.15.y] wifi: mt76: mt7615: drop TXRX_NOTIFY on non-mmio buses
Quoted 1 line
[PATCH 5.15.y] wifi: mt76: mt7615: drop
TXRX_NOTIFYon non-mmio buses
Queued for 5.15 and 5.10, thanks.
Signature · 2 lines
Thanks, Sasha