From fe3d783d1e98840dbcb3a20205578eb9bddd7a8c Mon Sep 17 00:00:00 2001 From: Goetz Goerisch Date: Thu, 4 Sep 2025 18:07:03 +0200 Subject: [PATCH] kernel: bump 6.6 to 6.6.104 remove upstreamed patches: generic/backport-6.6/626-v6.17-net-ipv4-fix-regression-in-local-broadcast-routes.patch [1] All other patches auto-refreshed. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.104&id=a208d67cb44ba441bd38e04e270e9f1e230234ee Signed-off-by: Goetz Goerisch Link: https://github.com/openwrt/openwrt/pull/19955 (cherry picked from commit 0ee0846be14edcf530214aaefcecd0c124306b24) Signed-off-by: Goetz Goerisch Link: https://github.com/openwrt/openwrt/pull/19972 Signed-off-by: Hauke Mehrtens --- include/kernel-6.6 | 4 +- ...ce-quirks-for-Freeway-Airmouse-T3-an.patch | 4 +- .../950-0530-pinctrl-Add-rp1-driver.patch | 2 +- ...regression-in-local-broadcast-routes.patch | 47 ------------------- ...et-stmmac-improve-TX-timer-arm-logic.patch | 2 +- ...c-move-TX-timer-arm-after-DMA-enable.patch | 16 +++---- .../1009-net-stmmac-use-GFP_DMA32.patch | 2 +- 7 files changed, 15 insertions(+), 62 deletions(-) delete mode 100644 target/linux/generic/backport-6.6/626-v6.17-net-ipv4-fix-regression-in-local-broadcast-routes.patch diff --git a/include/kernel-6.6 b/include/kernel-6.6 index 8a2014fcc6d..70decb67866 100644 --- a/include/kernel-6.6 +++ b/include/kernel-6.6 @@ -1,2 +1,2 @@ -LINUX_VERSION-6.6 = .103 -LINUX_KERNEL_HASH-6.6.103 = d288dd38c3e62ba576ba6b3ad2a84cfba65cd43b702f6c50d1f701aee942b18e +LINUX_VERSION-6.6 = .104 +LINUX_KERNEL_HASH-6.6.104 = 2a772f9d661afabaaddcdfd1116239acb2d943377aceab9e0baed2b7a915e36a diff --git a/target/linux/bcm27xx/patches-6.6/950-0169-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch b/target/linux/bcm27xx/patches-6.6/950-0169-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch index 4ffa3ed95d0..96c04d52c7c 100644 --- a/target/linux/bcm27xx/patches-6.6/950-0169-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch +++ b/target/linux/bcm27xx/patches-6.6/950-0169-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch @@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell #define USB_VENDOR_ID_BELKIN 0x050d #define USB_DEVICE_ID_FLIP_KVM 0x3201 -@@ -1446,6 +1449,9 @@ +@@ -1449,6 +1452,9 @@ #define USB_VENDOR_ID_XIAOMI 0x2717 #define USB_DEVICE_ID_MI_SILENT_MOUSE 0x5014 @@ -53,7 +53,7 @@ Signed-off-by: Jonathan Bell { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH), HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE2), HID_QUIRK_ALWAYS_POLL }, -@@ -211,6 +212,7 @@ static const struct hid_device_id hid_qu +@@ -213,6 +214,7 @@ static const struct hid_device_id hid_qu { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_GROUP_AUDIO), HID_QUIRK_NOGET }, diff --git a/target/linux/bcm27xx/patches-6.6/950-0530-pinctrl-Add-rp1-driver.patch b/target/linux/bcm27xx/patches-6.6/950-0530-pinctrl-Add-rp1-driver.patch index cd1473ab2eb..de7cbe96f40 100644 --- a/target/linux/bcm27xx/patches-6.6/950-0530-pinctrl-Add-rp1-driver.patch +++ b/target/linux/bcm27xx/patches-6.6/950-0530-pinctrl-Add-rp1-driver.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/drivers/pinctrl/Kconfig +++ b/drivers/pinctrl/Kconfig -@@ -505,6 +505,13 @@ config PINCTRL_MLXBF3 +@@ -506,6 +506,13 @@ config PINCTRL_MLXBF3 each pin. This driver can also be built as a module called pinctrl-mlxbf3. diff --git a/target/linux/generic/backport-6.6/626-v6.17-net-ipv4-fix-regression-in-local-broadcast-routes.patch b/target/linux/generic/backport-6.6/626-v6.17-net-ipv4-fix-regression-in-local-broadcast-routes.patch deleted file mode 100644 index e250c2d88f6..00000000000 --- a/target/linux/generic/backport-6.6/626-v6.17-net-ipv4-fix-regression-in-local-broadcast-routes.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 5189446ba995556eaa3755a6e875bc06675b88bd Mon Sep 17 00:00:00 2001 -From: Oscar Maes -Date: Wed, 27 Aug 2025 08:23:21 +0200 -Subject: [PATCH] net: ipv4: fix regression in local-broadcast routes - -Commit 9e30ecf23b1b ("net: ipv4: fix incorrect MTU in broadcast routes") -introduced a regression where local-broadcast packets would have their -gateway set in __mkroute_output, which was caused by fi = NULL being -removed. - -Fix this by resetting the fib_info for local-broadcast packets. This -preserves the intended changes for directed-broadcast packets. - -Cc: stable@vger.kernel.org -Fixes: 9e30ecf23b1b ("net: ipv4: fix incorrect MTU in broadcast routes") -Reported-by: Brett A C Sheffield -Closes: https://lore.kernel.org/regressions/20250822165231.4353-4-bacs@librecast.net -Signed-off-by: Oscar Maes -Reviewed-by: David Ahern -Link: https://patch.msgid.link/20250827062322.4807-1-oscmaes92@gmail.com -Signed-off-by: Paolo Abeni ---- - net/ipv4/route.c | 10 +++++++--- - 1 file changed, 7 insertions(+), 3 deletions(-) - ---- a/net/ipv4/route.c -+++ b/net/ipv4/route.c -@@ -2547,12 +2547,16 @@ static struct rtable *__mkroute_output(c - !netif_is_l3_master(dev_out)) - return ERR_PTR(-EINVAL); - -- if (ipv4_is_lbcast(fl4->daddr)) -+ if (ipv4_is_lbcast(fl4->daddr)) { - type = RTN_BROADCAST; -- else if (ipv4_is_multicast(fl4->daddr)) -+ -+ /* reset fi to prevent gateway resolution */ -+ fi = NULL; -+ } else if (ipv4_is_multicast(fl4->daddr)) { - type = RTN_MULTICAST; -- else if (ipv4_is_zeronet(fl4->daddr)) -+ } else if (ipv4_is_zeronet(fl4->daddr)) { - return ERR_PTR(-EINVAL); -+ } - - if (dev_out->flags & IFF_LOOPBACK) - flags |= RTCF_LOCAL; diff --git a/target/linux/generic/backport-6.6/771-v6.7-01-net-stmmac-improve-TX-timer-arm-logic.patch b/target/linux/generic/backport-6.6/771-v6.7-01-net-stmmac-improve-TX-timer-arm-logic.patch index 38907ed0513..cca517644a8 100644 --- a/target/linux/generic/backport-6.6/771-v6.7-01-net-stmmac-improve-TX-timer-arm-logic.patch +++ b/target/linux/generic/backport-6.6/771-v6.7-01-net-stmmac-improve-TX-timer-arm-logic.patch @@ -46,7 +46,7 @@ Signed-off-by: Paolo Abeni --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c -@@ -2993,13 +2993,25 @@ static void stmmac_tx_timer_arm(struct s +@@ -2994,13 +2994,25 @@ static void stmmac_tx_timer_arm(struct s { struct stmmac_tx_queue *tx_q = &priv->dma_conf.tx_queue[queue]; u32 tx_coal_timer = priv->tx_coal_timer[queue]; diff --git a/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch b/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch index c9fb4c17c20..00829a15dfa 100644 --- a/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch +++ b/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch @@ -18,7 +18,7 @@ Signed-off-by: Paolo Abeni --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c -@@ -2541,9 +2541,13 @@ static void stmmac_bump_dma_threshold(st +@@ -2542,9 +2542,13 @@ static void stmmac_bump_dma_threshold(st * @priv: driver private structure * @budget: napi budget limiting this functions packet handling * @queue: TX queue index @@ -33,7 +33,7 @@ Signed-off-by: Paolo Abeni { struct stmmac_tx_queue *tx_q = &priv->dma_conf.tx_queue[queue]; struct stmmac_txq_stats *txq_stats = &priv->xstats.txq_stats[queue]; -@@ -2703,7 +2707,7 @@ static int stmmac_tx_clean(struct stmmac +@@ -2704,7 +2708,7 @@ static int stmmac_tx_clean(struct stmmac /* We still have pending packets, let's call for a new scheduling */ if (tx_q->dirty_tx != tx_q->cur_tx) @@ -42,7 +42,7 @@ Signed-off-by: Paolo Abeni u64_stats_update_begin(&txq_stats->napi_syncp); u64_stats_add(&txq_stats->napi.tx_packets, tx_packets); -@@ -5609,6 +5613,7 @@ static int stmmac_napi_poll_tx(struct na +@@ -5611,6 +5615,7 @@ static int stmmac_napi_poll_tx(struct na container_of(napi, struct stmmac_channel, tx_napi); struct stmmac_priv *priv = ch->priv_data; struct stmmac_txq_stats *txq_stats; @@ -50,7 +50,7 @@ Signed-off-by: Paolo Abeni u32 chan = ch->index; int work_done; -@@ -5617,7 +5622,7 @@ static int stmmac_napi_poll_tx(struct na +@@ -5619,7 +5624,7 @@ static int stmmac_napi_poll_tx(struct na u64_stats_inc(&txq_stats->napi.poll); u64_stats_update_end(&txq_stats->napi_syncp); @@ -59,7 +59,7 @@ Signed-off-by: Paolo Abeni work_done = min(work_done, budget); if (work_done < budget && napi_complete_done(napi, work_done)) { -@@ -5628,6 +5633,10 @@ static int stmmac_napi_poll_tx(struct na +@@ -5630,6 +5635,10 @@ static int stmmac_napi_poll_tx(struct na spin_unlock_irqrestore(&ch->lock, flags); } @@ -70,7 +70,7 @@ Signed-off-by: Paolo Abeni return work_done; } -@@ -5636,6 +5645,7 @@ static int stmmac_napi_poll_rxtx(struct +@@ -5638,6 +5647,7 @@ static int stmmac_napi_poll_rxtx(struct struct stmmac_channel *ch = container_of(napi, struct stmmac_channel, rxtx_napi); struct stmmac_priv *priv = ch->priv_data; @@ -78,7 +78,7 @@ Signed-off-by: Paolo Abeni int rx_done, tx_done, rxtx_done; struct stmmac_rxq_stats *rxq_stats; struct stmmac_txq_stats *txq_stats; -@@ -5651,7 +5661,7 @@ static int stmmac_napi_poll_rxtx(struct +@@ -5653,7 +5663,7 @@ static int stmmac_napi_poll_rxtx(struct u64_stats_inc(&txq_stats->napi.poll); u64_stats_update_end(&txq_stats->napi_syncp); @@ -87,7 +87,7 @@ Signed-off-by: Paolo Abeni tx_done = min(tx_done, budget); rx_done = stmmac_rx_zc(priv, budget, chan); -@@ -5676,6 +5686,10 @@ static int stmmac_napi_poll_rxtx(struct +@@ -5678,6 +5688,10 @@ static int stmmac_napi_poll_rxtx(struct spin_unlock_irqrestore(&ch->lock, flags); } diff --git a/target/linux/starfive/patches-6.6/1009-net-stmmac-use-GFP_DMA32.patch b/target/linux/starfive/patches-6.6/1009-net-stmmac-use-GFP_DMA32.patch index 79f2cb3f069..4d3997b24ec 100644 --- a/target/linux/starfive/patches-6.6/1009-net-stmmac-use-GFP_DMA32.patch +++ b/target/linux/starfive/patches-6.6/1009-net-stmmac-use-GFP_DMA32.patch @@ -19,7 +19,7 @@ Signed-off-by: Matteo Croce if (priv->dma_cap.host_dma_width <= 32) gfp |= GFP_DMA32; -@@ -4692,7 +4692,7 @@ static inline void stmmac_rx_refill(stru +@@ -4693,7 +4693,7 @@ static inline void stmmac_rx_refill(stru struct stmmac_rx_queue *rx_q = &priv->dma_conf.rx_queue[queue]; int dirty = stmmac_rx_dirty(priv, queue); unsigned int entry = rx_q->dirty_rx; -- 2.47.3