]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
kernel: bump 6.12 to 6.12.29 18837/head
authorMieczyslaw Nalewaj <namiltd@yahoo.com>
Sun, 18 May 2025 13:02:42 +0000 (15:02 +0200)
committerRobert Marko <robimarko@gmail.com>
Wed, 21 May 2025 11:52:35 +0000 (13:52 +0200)
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.29

Removed upstreamed:
        generic/pending-6.12/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch[1]

Added settings:
        x86: CONFIG_MITIGATION_ITS=y[2]

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=aac9d5fa537b0c19f6d3af3c8a124028510bb647
2. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=68d59e9ba38424389168eddf8791265818f67292

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18837
Signed-off-by: Robert Marko <robimarko@gmail.com>
13 files changed:
target/linux/generic/backport-6.12/753-v6.15-net-ethernet-mediatek-add-EEE-support.patch
target/linux/generic/hack-6.12/253-ksmbd-config.patch
target/linux/generic/hack-6.12/730-net-ethernet-mtk_eth_soc-add-hw-dump-for-forced-rese.patch
target/linux/generic/hack-6.12/902-debloat_proc.patch
target/linux/generic/kernel-6.12
target/linux/generic/pending-6.12/203-kallsyms_uncompressed.patch
target/linux/generic/pending-6.12/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
target/linux/generic/pending-6.12/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch [deleted file]
target/linux/generic/pending-6.12/737-net-ethernet-mtk_eth_soc-add-paths-and-SerDes-modes-.patch
target/linux/generic/pending-6.12/738-01-net-ethernet-mtk_eth_soc-reduce-rx-ring-size-for-older.patch
target/linux/generic/pending-6.12/738-02-net-ethernet-mtk_eth_soc-do-not-enable-page-pool-sta.patch
target/linux/generic/pending-6.12/920-mangle_bootargs.patch
target/linux/x86/config-6.12

index 2dda8b9d032af928fc274907677728dc3c69ee9c..9d26480bdf9c04ac11410d918fec0e03e90e22eb 100644 (file)
@@ -39,7 +39,7 @@ Signed-off-by: Qingfang Deng <dqfext@gmail.com>
        mcr |= MAC_MCR_TX_EN | MAC_MCR_RX_EN | MAC_MCR_FORCE_LINK;
        mtk_w32(mac->hw, mcr, MTK_MAC_MCR(mac->id));
  }
-@@ -4501,6 +4511,61 @@ static int mtk_set_pauseparam(struct net
+@@ -4506,6 +4516,61 @@ static int mtk_set_pauseparam(struct net
        return phylink_ethtool_set_pauseparam(mac->phylink, pause);
  }
  
@@ -101,7 +101,7 @@ Signed-off-by: Qingfang Deng <dqfext@gmail.com>
  static u16 mtk_select_queue(struct net_device *dev, struct sk_buff *skb,
                            struct net_device *sb_dev)
  {
-@@ -4533,6 +4598,8 @@ static const struct ethtool_ops mtk_etht
+@@ -4538,6 +4603,8 @@ static const struct ethtool_ops mtk_etht
        .set_pauseparam         = mtk_set_pauseparam,
        .get_rxnfc              = mtk_get_rxnfc,
        .set_rxnfc              = mtk_set_rxnfc,
@@ -110,7 +110,7 @@ Signed-off-by: Qingfang Deng <dqfext@gmail.com>
  };
  
  static const struct net_device_ops mtk_netdev_ops = {
-@@ -4593,6 +4660,8 @@ static int mtk_add_mac(struct mtk_eth *e
+@@ -4598,6 +4665,8 @@ static int mtk_add_mac(struct mtk_eth *e
        }
        mac = netdev_priv(eth->netdev[id]);
        eth->mac[id] = mac;
index a48f528116c1a6cfac13ba966f41c10c1085ba35..d5474d9799395dd96d5d2c0adc071ff44e0f1d31 100644 (file)
@@ -10,7 +10,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string
 
 --- a/init/Kconfig
 +++ b/init/Kconfig
-@@ -2059,7 +2059,7 @@ config PADATA
+@@ -2062,7 +2062,7 @@ config PADATA
        bool
  
  config ASN1
index d53794effcec096780daebbbe1673cab15798fb4..c4bf08b594b9e9fa6b9a468bf341e82b43bc3985 100644 (file)
@@ -37,7 +37,7 @@ Signed-off-by: Bo-Cun Chen <bc-bocun.chen@mediatek.com>
                .glo_cfg        = 0x4604,
                .rst_idx        = 0x4608,
                .delay_irq      = 0x460c,
-@@ -3904,6 +3907,56 @@ static void mtk_set_mcr_max_rx(struct mt
+@@ -3901,6 +3904,56 @@ static void mtk_set_mcr_max_rx(struct mt
                mtk_w32(mac->hw, mcr_new, MTK_MAC_MCR(mac->id));
  }
  
@@ -94,7 +94,7 @@ Signed-off-by: Bo-Cun Chen <bc-bocun.chen@mediatek.com>
  static void mtk_hw_reset(struct mtk_eth *eth)
  {
        u32 val;
-@@ -4383,6 +4436,8 @@ static void mtk_pending_work(struct work
+@@ -4380,6 +4433,8 @@ static void mtk_pending_work(struct work
        rtnl_lock();
        set_bit(MTK_RESETTING, &eth->state);
  
index 5c8be5fe2d773b52e0c53356a292b0894a911469..b62738748fb38f408a86e0b7b384c705efb58fd8 100644 (file)
@@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (!pe)
 --- a/mm/vmalloc.c
 +++ b/mm/vmalloc.c
-@@ -5034,6 +5034,8 @@ static int __init proc_vmalloc_init(void
+@@ -5051,6 +5051,8 @@ static int __init proc_vmalloc_init(void
  {
        void *priv_data = NULL;
  
index 70a35aa2aef2b6328f3d5f679b6d4a939fdb39d6..19f5f7f477d58de151bbc84d112a6cc3dbcc94be 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.12 = .28
-LINUX_KERNEL_HASH-6.12.28 = e8a099182562aecff781de72ce769461e706d97af42d740dff20eb450dd5771e
+LINUX_VERSION-6.12 = .29
+LINUX_KERNEL_HASH-6.12.29 = e8b2ec7e2338ccb9c86de7154f6edcaadfce80907493c143e85a82776bb5064d
index 307acd4988da5964915409fa5c3a1ecd706251b4..9855ce03c82d435d26f19ddfc1fbb7f373b09ef4 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/init/Kconfig
 +++ b/init/Kconfig
-@@ -1530,6 +1530,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW
+@@ -1533,6 +1533,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW
          the unaligned access emulation.
          see arch/parisc/kernel/unaligned.c for reference
  
index 0b3be626d7d3055acc27375fc446cb5331d0fad1..9a059593c97c299e3368a73611d8b969893d7d95 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -5135,6 +5135,8 @@ static int mtk_probe(struct platform_dev
+@@ -5140,6 +5140,8 @@ static int mtk_probe(struct platform_dev
                dev_err(eth->dev, "failed to allocated dummy device\n");
                goto err_unreg_netdev;
        }
diff --git a/target/linux/generic/pending-6.12/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch b/target/linux/generic/pending-6.12/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch
deleted file mode 100644 (file)
index 2d91bbe..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-From 7d41a5a8e9c91cc6bb011dd953570738583dd091 Mon Sep 17 00:00:00 2001
-From: Daniel Golle <daniel@makrotopia.org>
-Date: Wed, 18 Sep 2024 02:01:01 +0100
-Subject: [PATCH] net: ethernet: mtk_eth_soc: reset all TX queues on DMA free
-
-The purpose of resetting the TX queue is to reset the
-byte and packet count as well as to clear the software
-flow control XOFF bit.
-
-MediaTek developers pointed out that netdev_reset_queue would only
-resets queue 0 of the network device.
-Queues that are not reset may cause unexpected issues.
-
-Packets may stop being sent after reset and "transmit timeout" log may
-be displayed.
-
-Import fix from MediaTek's SDK to resolve this issue.
-
-Signed-off-by: Daniel Golle <daniel@makrotopia.org>
----
- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 18 ++++++++++++++----
- 1 file changed, 14 insertions(+), 4 deletions(-)
-
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -3150,11 +3150,19 @@ static int mtk_dma_init(struct mtk_eth *
- static void mtk_dma_free(struct mtk_eth *eth)
- {
-       const struct mtk_soc_data *soc = eth->soc;
--      int i;
-+      int i, j, txqs = 1;
-+
-+      if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
-+              txqs = MTK_QDMA_NUM_QUEUES;
-+
-+      for (i = 0; i < MTK_MAX_DEVS; i++) {
-+              if (!eth->netdev[i])
-+                      continue;
-+
-+              for (j = 0; j < txqs; j++)
-+                      netdev_tx_reset_queue(netdev_get_tx_queue(eth->netdev[i], j));
-+      }
--      for (i = 0; i < MTK_MAX_DEVS; i++)
--              if (eth->netdev[i])
--                      netdev_reset_queue(eth->netdev[i]);
-       if (!MTK_HAS_CAPS(soc->caps, MTK_SRAM) && eth->scratch_ring) {
-               dma_free_coherent(eth->dma_dev,
-                                 MTK_QDMA_RING_SIZE * soc->tx.desc_size,
index 3020f57250cd8c3ee90d1bffc6ca572b9331e0ab..52a15a6e09f7d6b4d903b763d3bcc19978c0e710 100644 (file)
@@ -487,7 +487,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0);
        if (err) {
                netdev_err(dev, "%s: could not attach PHY: %d\n", __func__,
-@@ -3582,6 +3730,9 @@ static int mtk_stop(struct net_device *d
+@@ -3579,6 +3727,9 @@ static int mtk_stop(struct net_device *d
        for (i = 0; i < ARRAY_SIZE(eth->ppe); i++)
                mtk_ppe_stop(eth->ppe[i]);
  
@@ -497,7 +497,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        return 0;
  }
  
-@@ -4672,6 +4823,7 @@ static const struct net_device_ops mtk_n
+@@ -4669,6 +4820,7 @@ static const struct net_device_ops mtk_n
  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
  {
        const __be32 *_id = of_get_property(np, "reg", NULL);
@@ -505,7 +505,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        phy_interface_t phy_mode;
        struct phylink *phylink;
        struct mtk_mac *mac;
-@@ -4710,16 +4862,41 @@ static int mtk_add_mac(struct mtk_eth *e
+@@ -4707,16 +4859,41 @@ static int mtk_add_mac(struct mtk_eth *e
        mac->id = id;
        mac->hw = eth;
        mac->of_node = np;
@@ -555,7 +555,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        }
  
        memset(mac->hwlro_ip, 0, sizeof(mac->hwlro_ip));
-@@ -4802,8 +4979,21 @@ static int mtk_add_mac(struct mtk_eth *e
+@@ -4799,8 +4976,21 @@ static int mtk_add_mac(struct mtk_eth *e
                phy_interface_zero(mac->phylink_config.supported_interfaces);
                __set_bit(PHY_INTERFACE_MODE_INTERNAL,
                          mac->phylink_config.supported_interfaces);
@@ -577,7 +577,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        phylink = phylink_create(&mac->phylink_config,
                                 of_fwnode_handle(mac->of_node),
                                 phy_mode, &mtk_phylink_ops);
-@@ -4854,6 +5044,26 @@ free_netdev:
+@@ -4851,6 +5041,26 @@ free_netdev:
        return err;
  }
  
@@ -604,7 +604,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  void mtk_eth_set_dma_device(struct mtk_eth *eth, struct device *dma_dev)
  {
        struct net_device *dev, *tmp;
-@@ -5000,7 +5210,8 @@ static int mtk_probe(struct platform_dev
+@@ -4997,7 +5207,8 @@ static int mtk_probe(struct platform_dev
                        regmap_write(cci, 0, 3);
        }
  
@@ -614,7 +614,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
                err = mtk_sgmii_init(eth);
  
                if (err)
-@@ -5111,6 +5322,24 @@ static int mtk_probe(struct platform_dev
+@@ -5108,6 +5319,24 @@ static int mtk_probe(struct platform_dev
                }
        }
  
@@ -639,7 +639,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
        if (MTK_HAS_CAPS(eth->soc->caps, MTK_SHARED_INT)) {
                err = devm_request_irq(eth->dev, eth->irq[0],
                                       mtk_handle_irq, 0,
-@@ -5221,6 +5450,11 @@ static void mtk_remove(struct platform_d
+@@ -5218,6 +5447,11 @@ static void mtk_remove(struct platform_d
                mtk_stop(eth->netdev[i]);
                mac = netdev_priv(eth->netdev[i]);
                phylink_disconnect_phy(mac->phylink);
index 12bb216d9310163ce58d5d5107a5f9fa20f4dc87..7ec342a20f4d75908037ff43e3e827e19e9ba3eb 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -5485,7 +5485,7 @@ static const struct mtk_soc_data mt2701_
+@@ -5482,7 +5482,7 @@ static const struct mtk_soc_data mt2701_
                .desc_size = sizeof(struct mtk_rx_dma),
                .irq_done_mask = MTK_RX_DONE_INT,
                .dma_l4_valid = RX_DMA_L4_VALID,
@@ -39,7 +39,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
        },
-@@ -5513,7 +5513,7 @@ static const struct mtk_soc_data mt7621_
+@@ -5510,7 +5510,7 @@ static const struct mtk_soc_data mt7621_
                .desc_size = sizeof(struct mtk_rx_dma),
                .irq_done_mask = MTK_RX_DONE_INT,
                .dma_l4_valid = RX_DMA_L4_VALID,
@@ -48,7 +48,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
        },
-@@ -5543,7 +5543,7 @@ static const struct mtk_soc_data mt7622_
+@@ -5540,7 +5540,7 @@ static const struct mtk_soc_data mt7622_
                .desc_size = sizeof(struct mtk_rx_dma),
                .irq_done_mask = MTK_RX_DONE_INT,
                .dma_l4_valid = RX_DMA_L4_VALID,
@@ -57,7 +57,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
        },
-@@ -5572,7 +5572,7 @@ static const struct mtk_soc_data mt7623_
+@@ -5569,7 +5569,7 @@ static const struct mtk_soc_data mt7623_
                .desc_size = sizeof(struct mtk_rx_dma),
                .irq_done_mask = MTK_RX_DONE_INT,
                .dma_l4_valid = RX_DMA_L4_VALID,
@@ -66,7 +66,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
        },
-@@ -5598,7 +5598,7 @@ static const struct mtk_soc_data mt7629_
+@@ -5595,7 +5595,7 @@ static const struct mtk_soc_data mt7629_
                .desc_size = sizeof(struct mtk_rx_dma),
                .irq_done_mask = MTK_RX_DONE_INT,
                .dma_l4_valid = RX_DMA_L4_VALID,
@@ -75,7 +75,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
        },
-@@ -5630,7 +5630,7 @@ static const struct mtk_soc_data mt7981_
+@@ -5627,7 +5627,7 @@ static const struct mtk_soc_data mt7981_
                .dma_l4_valid = RX_DMA_L4_VALID_V2,
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
@@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        },
  };
  
-@@ -5660,7 +5660,7 @@ static const struct mtk_soc_data mt7986_
+@@ -5657,7 +5657,7 @@ static const struct mtk_soc_data mt7986_
                .dma_l4_valid = RX_DMA_L4_VALID_V2,
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
@@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        },
  };
  
-@@ -5713,7 +5713,7 @@ static const struct mtk_soc_data rt5350_
+@@ -5710,7 +5710,7 @@ static const struct mtk_soc_data rt5350_
                .dma_l4_valid = RX_DMA_L4_VALID_PDMA,
                .dma_max_len = MTK_TX_DMA_BUF_LEN,
                .dma_len_offset = 16,
index a8a4dafb0f77190695251ee21183df8987185f9e..26706de6ad890a197bc2229e597e4841f97fe8ff 100644 (file)
@@ -25,7 +25,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        help
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -4591,6 +4591,7 @@ static int mtk_get_sset_count(struct net
+@@ -4588,6 +4588,7 @@ static int mtk_get_sset_count(struct net
  
  static void mtk_ethtool_pp_stats(struct mtk_eth *eth, u64 *data)
  {
@@ -33,7 +33,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        struct page_pool_stats stats = {};
        int i;
  
-@@ -4603,6 +4604,7 @@ static void mtk_ethtool_pp_stats(struct
+@@ -4600,6 +4601,7 @@ static void mtk_ethtool_pp_stats(struct
                page_pool_get_stats(ring->page_pool, &stats);
        }
        page_pool_ethtool_stats_get(data, &stats);
index 11f2edf5f45fa63bf6ac4c49e3561de3f12e8939..04f5be3f74021fa24dc587f210116473d1526755 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
 
 --- a/init/Kconfig
 +++ b/init/Kconfig
-@@ -1884,6 +1884,15 @@ config ARCH_HAS_MEMBARRIER_CALLBACKS
+@@ -1887,6 +1887,15 @@ config ARCH_HAS_MEMBARRIER_CALLBACKS
  config ARCH_HAS_MEMBARRIER_SYNC_CORE
        bool
  
index 7665f03004b4aa73094081d3c18fec7d52ea05ed..4418db541d3571c9e965caf2402ca2764acd0765 100644 (file)
@@ -256,6 +256,7 @@ CONFIG_MICROCODE_INITRD32=y
 CONFIG_MICROCODE_LATE_FORCE_MINREV=y
 CONFIG_MICROCODE_LATE_LOADING=y
 CONFIG_MIGRATION=y
+CONFIG_MITIGATION_ITS=y
 CONFIG_MITIGATION_GDS=y
 CONFIG_MITIGATION_L1TF=y
 CONFIG_MITIGATION_MDS=y