[openwrt/openwrt] kernel: bump 6.6 to 6.6.60

LEDE Commits lede-commits at lists.infradead.org
Sun Nov 10 08:09:19 PST 2024


robimarko pushed a commit to openwrt/openwrt.git, branch openwrt-24.10:
https://git.openwrt.org/92eb867873414e67df398859e082bffe0fcdfe80

commit 92eb867873414e67df398859e082bffe0fcdfe80
Author: John Audia <therealgraysky at proton.me>
AuthorDate: Fri Nov 8 14:57:44 2024 -0500

    kernel: bump 6.6 to 6.6.60
    
    Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.60
    
    Removed upstreamed:
            generic/backport-6.6/409-mtd-spi-nor-winbond-fix-w25q128-regression.patch
    
    All other patches automatically rebased.
    
    1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.60&id=27a58a19bd20a7afe369da2ce6d4ebea70768acd
    
    Build system: x86/64
    Build-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
    Run-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
    
    Signed-off-by: John Audia <therealgraysky at proton.me>
    Link: https://github.com/openwrt/openwrt/pull/16892
    Signed-off-by: Nick Hainke <vincent at systemli.org>
    (cherry picked from commit 85844cfc5c591d00997ade665340315d54bc5822)
---
 include/kernel-6.6                                 |  4 +-
 ...Add-devm_thermal_of_zone_register_with_pa.patch |  4 +-
 ...t5x06-Poll-the-device-if-no-interrupt-is-.patch |  2 +-
 ...t54x6-Clean-up-timer-and-workqueue-on-rem.patch |  4 +-
 ...oth-hci_sync-Add-fallback-bd-address-prop.patch |  4 +-
 ...screen-edt-ft5x06-Suppress-bogus-data-on-.patch |  4 +-
 ...uetooth-hci_sync-Fix-crash-on-NULL-parent.patch |  2 +-
 ...td-spi-nor-winbond-fix-w25q128-regression.patch | 59 ----------------------
 ...conditional-threaded-NAPI-wakeup-based-on.patch |  6 +--
 ...Allow-to-use-SMP-threads-for-backlog-NAPI.patch | 22 ++++----
 ...e-backlog-NAPI-to-clean-up-the-defer_list.patch |  2 +-
 ...v6.10-net-Rename-rps_lock-to-backlog_lock.patch | 18 +++----
 ...v6.11-net-Make-USO-depend-on-CSUM-offload.patch |  6 +--
 ...stats64-if-device-if-driver-is-configured.patch |  2 +-
 ...0-net-create-a-dummy-net_device-allocator.patch |  6 +--
 ...70-net-introduce-napi_is_scheduled-helper.patch |  2 +-
 ...stmmac-move-TX-timer-arm-after-DMA-enable.patch | 12 ++---
 ....11-net-free_netdev-exit-earlier-if-dummy.patch |  2 +-
 ...rt-Revert-driver-core-Set-fw_devlink-on-b.patch |  2 +-
 ...-usb-fix-serdes-init-sequence-for-IPQ6018.patch |  2 +-
 .../1009-net-stmmac-use-GFP_DMA32.patch            |  2 +-
 21 files changed, 54 insertions(+), 113 deletions(-)

diff --git a/include/kernel-6.6 b/include/kernel-6.6
index 5e154f2d21..261a77428c 100644
--- a/include/kernel-6.6
+++ b/include/kernel-6.6
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.6 = .59
-LINUX_KERNEL_HASH-6.6.59 = 23616808d8c08f12815ff898f4edb4c11397a2b2843d029ee62452d21833a76d
+LINUX_VERSION-6.6 = .60
+LINUX_KERNEL_HASH-6.6.60 = 52f9e32d5082ab94253447fd66670d0c3bb765cfcb99b0bf61d1b8eae25952ef
diff --git a/target/linux/airoha/patches-6.6/101-01-thermal-of-Add-devm_thermal_of_zone_register_with_pa.patch b/target/linux/airoha/patches-6.6/101-01-thermal-of-Add-devm_thermal_of_zone_register_with_pa.patch
index e69f57d273..889ec1123e 100644
--- a/target/linux/airoha/patches-6.6/101-01-thermal-of-Add-devm_thermal_of_zone_register_with_pa.patch
+++ b/target/linux/airoha/patches-6.6/101-01-thermal-of-Add-devm_thermal_of_zone_register_with_pa.patch
@@ -181,7 +181,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
   * @dev: Device for which which resource was allocated.
 --- a/include/linux/thermal.h
 +++ b/include/linux/thermal.h
-@@ -261,6 +261,10 @@ struct thermal_zone_params {
+@@ -263,6 +263,10 @@ struct thermal_zone_params {
  #ifdef CONFIG_THERMAL_OF
  struct thermal_zone_device *devm_thermal_of_zone_register(struct device *dev, int id, void *data,
  							  const struct thermal_zone_device_ops *ops);
@@ -192,7 +192,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  
  void devm_thermal_of_zone_unregister(struct device *dev, struct thermal_zone_device *tz);
  
-@@ -272,6 +276,15 @@ struct thermal_zone_device *devm_thermal
+@@ -274,6 +278,15 @@ struct thermal_zone_device *devm_thermal
  {
  	return ERR_PTR(-ENOTSUPP);
  }
diff --git a/target/linux/bcm27xx/patches-6.6/950-0262-Input-edt-ft5x06-Poll-the-device-if-no-interrupt-is-.patch b/target/linux/bcm27xx/patches-6.6/950-0262-Input-edt-ft5x06-Poll-the-device-if-no-interrupt-is-.patch
index bfb26e8f02..9369883fc6 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0262-Input-edt-ft5x06-Poll-the-device-if-no-interrupt-is-.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0262-Input-edt-ft5x06-Poll-the-device-if-no-interrupt-is-.patch
@@ -193,7 +193,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson at raspberrypi.com>
  		tsdata->tdata_offset + crclen;
  }
  
-@@ -1317,17 +1374,27 @@ static int edt_ft5x06_ts_probe(struct i2
+@@ -1335,17 +1392,27 @@ static int edt_ft5x06_ts_probe(struct i2
  		return error;
  	}
  
diff --git a/target/linux/bcm27xx/patches-6.6/950-0302-Input-edt-ft54x6-Clean-up-timer-and-workqueue-on-rem.patch b/target/linux/bcm27xx/patches-6.6/950-0302-Input-edt-ft54x6-Clean-up-timer-and-workqueue-on-rem.patch
index 2b5abd2581..3486c2acaa 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0302-Input-edt-ft54x6-Clean-up-timer-and-workqueue-on-rem.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0302-Input-edt-ft54x6-Clean-up-timer-and-workqueue-on-rem.patch
@@ -18,7 +18,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson at raspberrypi.com>
 
 --- a/drivers/input/touchscreen/edt-ft5x06.c
 +++ b/drivers/input/touchscreen/edt-ft5x06.c
-@@ -1420,6 +1420,10 @@ static void edt_ft5x06_ts_remove(struct
+@@ -1438,6 +1438,10 @@ static void edt_ft5x06_ts_remove(struct
  {
  	struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client);
  
@@ -27,5 +27,5 @@ Signed-off-by: Dave Stevenson <dave.stevenson at raspberrypi.com>
 +		cancel_work_sync(&tsdata->work_i2c_poll);
 +	}
  	edt_ft5x06_ts_teardown_debugfs(tsdata);
- 	regmap_exit(tsdata->regmap);
  }
+ 
diff --git a/target/linux/bcm27xx/patches-6.6/950-0441-Bluetooth-hci_sync-Add-fallback-bd-address-prop.patch b/target/linux/bcm27xx/patches-6.6/950-0441-Bluetooth-hci_sync-Add-fallback-bd-address-prop.patch
index 0e404906be..cc5e3d1dc3 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0441-Bluetooth-hci_sync-Add-fallback-bd-address-prop.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0441-Bluetooth-hci_sync-Add-fallback-bd-address-prop.patch
@@ -20,7 +20,7 @@ Signed-off-by: Phil Elwell <phil at raspberrypi.com>
 
 --- a/net/bluetooth/hci_sync.c
 +++ b/net/bluetooth/hci_sync.c
-@@ -4861,6 +4861,7 @@ static const struct {
+@@ -4865,6 +4865,7 @@ static const struct {
   */
  static int hci_dev_setup_sync(struct hci_dev *hdev)
  {
@@ -28,7 +28,7 @@ Signed-off-by: Phil Elwell <phil at raspberrypi.com>
  	int ret = 0;
  	bool invalid_bdaddr;
  	size_t i;
-@@ -4889,7 +4890,8 @@ static int hci_dev_setup_sync(struct hci
+@@ -4893,7 +4894,8 @@ static int hci_dev_setup_sync(struct hci
  			 test_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks);
  	if (!ret) {
  		if (test_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks) &&
diff --git a/target/linux/bcm27xx/patches-6.6/950-0669-input-touchscreen-edt-ft5x06-Suppress-bogus-data-on-.patch b/target/linux/bcm27xx/patches-6.6/950-0669-input-touchscreen-edt-ft5x06-Suppress-bogus-data-on-.patch
index b3bf708ade..9019a43049 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0669-input-touchscreen-edt-ft5x06-Suppress-bogus-data-on-.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0669-input-touchscreen-edt-ft5x06-Suppress-bogus-data-on-.patch
@@ -58,7 +58,7 @@ Signed-off-by: Nick Hollinghurst <nick.hollinghurst at raspberrypi.com>
  		if (!error && num_points)
  			error = regmap_bulk_read(tsdata->regmap,
  						 tsdata->tdata_offset,
-@@ -1300,7 +1318,7 @@ static int edt_ft5x06_ts_probe(struct i2
+@@ -1318,7 +1336,7 @@ static int edt_ft5x06_ts_probe(struct i2
  	if (tsdata->reset_gpio) {
  		usleep_range(5000, 6000);
  		gpiod_set_value_cansleep(tsdata->reset_gpio, 0);
@@ -67,7 +67,7 @@ Signed-off-by: Nick Hollinghurst <nick.hollinghurst at raspberrypi.com>
  	}
  
  	input = devm_input_allocate_device(&client->dev);
-@@ -1389,11 +1407,12 @@ static int edt_ft5x06_ts_probe(struct i2
+@@ -1407,11 +1425,12 @@ static int edt_ft5x06_ts_probe(struct i2
  			return error;
  		}
  	} else {
diff --git a/target/linux/bcm27xx/patches-6.6/950-1218-Bluetooth-hci_sync-Fix-crash-on-NULL-parent.patch b/target/linux/bcm27xx/patches-6.6/950-1218-Bluetooth-hci_sync-Fix-crash-on-NULL-parent.patch
index 272f711e63..3b4c7e65af 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1218-Bluetooth-hci_sync-Fix-crash-on-NULL-parent.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1218-Bluetooth-hci_sync-Fix-crash-on-NULL-parent.patch
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil at raspberrypi.com>
 
 --- a/net/bluetooth/hci_sync.c
 +++ b/net/bluetooth/hci_sync.c
-@@ -4861,7 +4861,8 @@ static const struct {
+@@ -4865,7 +4865,8 @@ static const struct {
   */
  static int hci_dev_setup_sync(struct hci_dev *hdev)
  {
diff --git a/target/linux/generic/backport-6.6/409-mtd-spi-nor-winbond-fix-w25q128-regression.patch b/target/linux/generic/backport-6.6/409-mtd-spi-nor-winbond-fix-w25q128-regression.patch
deleted file mode 100644
index de79328138..0000000000
--- a/target/linux/generic/backport-6.6/409-mtd-spi-nor-winbond-fix-w25q128-regression.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 342672bbdf713654316a0ff73c7f2ecf7ea6693d Mon Sep 17 00:00:00 2001
-From: Michael Walle <mwalle at kernel.org>
-Date: Fri, 21 Jun 2024 14:09:29 +0200
-Subject: [PATCH] mtd: spi-nor: winbond: fix w25q128 regression
-
-Upstream commit d35df77707bf5ae1221b5ba1c8a88cf4fcdd4901
-
-("mtd: spi-nor: winbond: fix w25q128 regression")
-however the code has changed a lot after v6.6 so the patch did
-not apply to v6.6 or v6.1 which still has the problem.
-
-This patch fixes the issue in the way of the old API and has
-been tested on hardware. Please apply it for v6.1 and v6.6.
-
-Commit 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
-removed the flags for non-SFDP devices. It was assumed that it wasn't in
-use anymore. This wasn't true. Add the no_sfdp_flags as well as the size
-again.
-
-We add the additional flags for dual and quad read because they have
-been reported to work properly by Hartmut using both older and newer
-versions of this flash, the similar flashes with 64Mbit and 256Mbit
-already have these flags and because it will (luckily) trigger our
-legacy SFDP parsing, so newer versions with SFDP support will still get
-the parameters from the SFDP tables.
-
-Reported-by: Hartmut Birr <e9hack at gmail.com>
-Closes: https://lore.kernel.org/r/CALxbwRo_-9CaJmt7r7ELgu+vOcgk=xZcGHobnKf=oT2=u4d4aA@mail.gmail.com/
-Fixes: 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
-Reviewed-by: Linus Walleij <linus.walleij at linaro.org>
-Signed-off-by: Michael Walle <mwalle at kernel.org>
-Acked-by: Tudor Ambarus <tudor.ambarus at linaro.org>
-Reviewed-by: Esben Haabendal <esben at geanix.com>
-Reviewed-by: Pratyush Yadav <pratyush at kernel.org>
-Signed-off-by: Pratyush Yadav <pratyush at kernel.org>
-Link: https://lore.kernel.org/r/20240621120929.2670185-1-mwalle@kernel.org
-[Backported to v6.6 - vastly different due to upstream changes]
-Reviewed-by: Tudor Ambarus <tudor.ambarus at linaro.org>
-Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
----
- drivers/mtd/spi-nor/winbond.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
---- a/drivers/mtd/spi-nor/winbond.c
-+++ b/drivers/mtd/spi-nor/winbond.c
-@@ -120,9 +120,10 @@ static const struct flash_info winbond_n
- 		NO_SFDP_FLAGS(SECT_4K) },
- 	{ "w25q80bl", INFO(0xef4014, 0, 64 * 1024,  16)
- 		NO_SFDP_FLAGS(SECT_4K) },
--	{ "w25q128", INFO(0xef4018, 0, 0, 0)
--		PARSE_SFDP
--		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
-+	{ "w25q128", INFO(0xef4018, 0, 64 * 1024, 256)
-+		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
-+		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
-+			      SPI_NOR_QUAD_READ) },
- 	{ "w25q256", INFO(0xef4019, 0, 64 * 1024, 512)
- 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
- 		.fixups = &w25q256_fixups },
diff --git a/target/linux/generic/backport-6.6/600-v6.10-net-Remove-conditional-threaded-NAPI-wakeup-based-on.patch b/target/linux/generic/backport-6.6/600-v6.10-net-Remove-conditional-threaded-NAPI-wakeup-based-on.patch
index 3f75dffde7..6ee4716c5c 100644
--- a/target/linux/generic/backport-6.6/600-v6.10-net-Remove-conditional-threaded-NAPI-wakeup-based-on.patch
+++ b/target/linux/generic/backport-6.6/600-v6.10-net-Remove-conditional-threaded-NAPI-wakeup-based-on.patch
@@ -32,7 +32,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -4477,13 +4477,7 @@ static inline void ____napi_schedule(str
+@@ -4481,13 +4481,7 @@ static inline void ____napi_schedule(str
  		 */
  		thread = READ_ONCE(napi->thread);
  		if (thread) {
@@ -47,7 +47,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  			wake_up_process(thread);
  			return;
  		}
-@@ -6639,8 +6633,6 @@ static int napi_poll(struct napi_struct
+@@ -6643,8 +6637,6 @@ static int napi_poll(struct napi_struct
  
  static int napi_thread_wait(struct napi_struct *napi)
  {
@@ -56,7 +56,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	set_current_state(TASK_INTERRUPTIBLE);
  
  	while (!kthread_should_stop()) {
-@@ -6649,15 +6641,13 @@ static int napi_thread_wait(struct napi_
+@@ -6653,15 +6645,13 @@ static int napi_thread_wait(struct napi_
  		 * Testing SCHED bit is not enough because SCHED bit might be
  		 * set by some other busy poll thread or by napi_disable().
  		 */
diff --git a/target/linux/generic/backport-6.6/601-v6.10-net-Allow-to-use-SMP-threads-for-backlog-NAPI.patch b/target/linux/generic/backport-6.6/601-v6.10-net-Allow-to-use-SMP-threads-for-backlog-NAPI.patch
index b343a3f964..8c0b41f37b 100644
--- a/target/linux/generic/backport-6.6/601-v6.10-net-Allow-to-use-SMP-threads-for-backlog-NAPI.patch
+++ b/target/linux/generic/backport-6.6/601-v6.10-net-Allow-to-use-SMP-threads-for-backlog-NAPI.patch
@@ -108,7 +108,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  static inline void rps_lock_irqsave(struct softnet_data *sd,
  				    unsigned long *flags)
  {
-@@ -4445,6 +4471,7 @@ EXPORT_SYMBOL(__dev_direct_xmit);
+@@ -4449,6 +4475,7 @@ EXPORT_SYMBOL(__dev_direct_xmit);
  /*************************************************************************
   *			Receiver routines
   *************************************************************************/
@@ -116,7 +116,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  int netdev_max_backlog __read_mostly = 1000;
  EXPORT_SYMBOL(netdev_max_backlog);
-@@ -4477,12 +4504,16 @@ static inline void ____napi_schedule(str
+@@ -4481,12 +4508,16 @@ static inline void ____napi_schedule(str
  		 */
  		thread = READ_ONCE(napi->thread);
  		if (thread) {
@@ -133,7 +133,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	list_add_tail(&napi->poll_list, &sd->poll_list);
  	WRITE_ONCE(napi->list_owner, smp_processor_id());
  	/* If not called from net_rx_action()
-@@ -4728,6 +4759,11 @@ static void napi_schedule_rps(struct sof
+@@ -4732,6 +4763,11 @@ static void napi_schedule_rps(struct sof
  
  #ifdef CONFIG_RPS
  	if (sd != mysd) {
@@ -145,7 +145,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		sd->rps_ipi_next = mysd->rps_ipi_list;
  		mysd->rps_ipi_list = sd;
  
-@@ -5951,7 +5987,7 @@ static void net_rps_action_and_irq_enabl
+@@ -5955,7 +5991,7 @@ static void net_rps_action_and_irq_enabl
  #ifdef CONFIG_RPS
  	struct softnet_data *remsd = sd->rps_ipi_list;
  
@@ -154,7 +154,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		sd->rps_ipi_list = NULL;
  
  		local_irq_enable();
-@@ -5966,7 +6002,7 @@ static void net_rps_action_and_irq_enabl
+@@ -5970,7 +6006,7 @@ static void net_rps_action_and_irq_enabl
  static bool sd_has_rps_ipi_waiting(struct softnet_data *sd)
  {
  #ifdef CONFIG_RPS
@@ -163,7 +163,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  #else
  	return false;
  #endif
-@@ -6010,7 +6046,7 @@ static int process_backlog(struct napi_s
+@@ -6014,7 +6050,7 @@ static int process_backlog(struct napi_s
  			 * We can use a plain write instead of clear_bit(),
  			 * and we dont need an smp_mb() memory barrier.
  			 */
@@ -172,7 +172,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  			again = false;
  		} else {
  			skb_queue_splice_tail_init(&sd->input_pkt_queue,
-@@ -6676,43 +6712,48 @@ static void skb_defer_free_flush(struct
+@@ -6680,43 +6716,48 @@ static void skb_defer_free_flush(struct
  	}
  }
  
@@ -250,7 +250,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	return 0;
  }
  
-@@ -11293,7 +11334,7 @@ static int dev_cpu_dead(unsigned int old
+@@ -11297,7 +11338,7 @@ static int dev_cpu_dead(unsigned int old
  
  		list_del_init(&napi->poll_list);
  		if (napi->poll == process_backlog)
@@ -259,7 +259,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		else
  			____napi_schedule(sd, napi);
  	}
-@@ -11301,12 +11342,14 @@ static int dev_cpu_dead(unsigned int old
+@@ -11305,12 +11346,14 @@ static int dev_cpu_dead(unsigned int old
  	raise_softirq_irqoff(NET_TX_SOFTIRQ);
  	local_irq_enable();
  
@@ -278,7 +278,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	/* Process offline CPU's input_pkt_queue */
  	while ((skb = __skb_dequeue(&oldsd->process_queue))) {
-@@ -11569,6 +11612,38 @@ static struct pernet_operations __net_in
+@@ -11573,6 +11616,38 @@ static struct pernet_operations __net_in
   *
   */
  
@@ -317,7 +317,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  /*
   *       This is called single threaded during boot, so no need
   *       to take the rtnl semaphore.
-@@ -11619,7 +11694,10 @@ static int __init net_dev_init(void)
+@@ -11623,7 +11698,10 @@ static int __init net_dev_init(void)
  		init_gro_hash(&sd->backlog);
  		sd->backlog.poll = process_backlog;
  		sd->backlog.weight = weight_p;
diff --git a/target/linux/generic/backport-6.6/602-v6.10-net-Use-backlog-NAPI-to-clean-up-the-defer_list.patch b/target/linux/generic/backport-6.6/602-v6.10-net-Use-backlog-NAPI-to-clean-up-the-defer_list.patch
index 3b1a64e4c6..3fcc72e589 100644
--- a/target/linux/generic/backport-6.6/602-v6.10-net-Use-backlog-NAPI-to-clean-up-the-defer_list.patch
+++ b/target/linux/generic/backport-6.6/602-v6.10-net-Use-backlog-NAPI-to-clean-up-the-defer_list.patch
@@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		spin_unlock_irq(&sd->input_pkt_queue.lock);
  	else if (!IS_ENABLED(CONFIG_PREEMPT_RT))
  		local_irq_enable();
-@@ -4778,6 +4778,23 @@ static void napi_schedule_rps(struct sof
+@@ -4782,6 +4782,23 @@ static void napi_schedule_rps(struct sof
  	__napi_schedule_irqoff(&mysd->backlog);
  }
  
diff --git a/target/linux/generic/backport-6.6/603-v6.10-net-Rename-rps_lock-to-backlog_lock.patch b/target/linux/generic/backport-6.6/603-v6.10-net-Rename-rps_lock-to-backlog_lock.patch
index dab96763fc..056bd5686e 100644
--- a/target/linux/generic/backport-6.6/603-v6.10-net-Rename-rps_lock-to-backlog_lock.patch
+++ b/target/linux/generic/backport-6.6/603-v6.10-net-Rename-rps_lock-to-backlog_lock.patch
@@ -67,7 +67,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  {
  	if (IS_ENABLED(CONFIG_RPS) || use_backlog_threads())
  		spin_unlock_irq(&sd->input_pkt_queue.lock);
-@@ -4783,12 +4783,12 @@ void kick_defer_list_purge(struct softne
+@@ -4787,12 +4787,12 @@ void kick_defer_list_purge(struct softne
  	unsigned long flags;
  
  	if (use_backlog_threads()) {
@@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	} else if (!cmpxchg(&sd->defer_ipi_scheduled, 0, 1)) {
  		smp_call_function_single_async(cpu, &sd->defer_csd);
-@@ -4850,7 +4850,7 @@ static int enqueue_to_backlog(struct sk_
+@@ -4854,7 +4854,7 @@ static int enqueue_to_backlog(struct sk_
  	reason = SKB_DROP_REASON_NOT_SPECIFIED;
  	sd = &per_cpu(softnet_data, cpu);
  
@@ -91,7 +91,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	if (!netif_running(skb->dev))
  		goto drop;
  	qlen = skb_queue_len(&sd->input_pkt_queue);
-@@ -4859,7 +4859,7 @@ static int enqueue_to_backlog(struct sk_
+@@ -4863,7 +4863,7 @@ static int enqueue_to_backlog(struct sk_
  enqueue:
  			__skb_queue_tail(&sd->input_pkt_queue, skb);
  			input_queue_tail_incr_save(sd, qtail);
@@ -100,7 +100,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  			return NET_RX_SUCCESS;
  		}
  
-@@ -4874,7 +4874,7 @@ enqueue:
+@@ -4878,7 +4878,7 @@ enqueue:
  
  drop:
  	sd->dropped++;
@@ -109,7 +109,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	dev_core_stats_rx_dropped_inc(skb->dev);
  	kfree_skb_reason(skb, reason);
-@@ -5905,7 +5905,7 @@ static void flush_backlog(struct work_st
+@@ -5909,7 +5909,7 @@ static void flush_backlog(struct work_st
  	local_bh_disable();
  	sd = this_cpu_ptr(&softnet_data);
  
@@ -118,7 +118,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	skb_queue_walk_safe(&sd->input_pkt_queue, skb, tmp) {
  		if (skb->dev->reg_state == NETREG_UNREGISTERING) {
  			__skb_unlink(skb, &sd->input_pkt_queue);
-@@ -5913,7 +5913,7 @@ static void flush_backlog(struct work_st
+@@ -5917,7 +5917,7 @@ static void flush_backlog(struct work_st
  			input_queue_head_incr(sd);
  		}
  	}
@@ -127,7 +127,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
  		if (skb->dev->reg_state == NETREG_UNREGISTERING) {
-@@ -5931,14 +5931,14 @@ static bool flush_required(int cpu)
+@@ -5935,14 +5935,14 @@ static bool flush_required(int cpu)
  	struct softnet_data *sd = &per_cpu(softnet_data, cpu);
  	bool do_flush;
  
@@ -144,7 +144,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	return do_flush;
  #endif
-@@ -6053,7 +6053,7 @@ static int process_backlog(struct napi_s
+@@ -6057,7 +6057,7 @@ static int process_backlog(struct napi_s
  
  		}
  
@@ -153,7 +153,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		if (skb_queue_empty(&sd->input_pkt_queue)) {
  			/*
  			 * Inline a custom version of __napi_complete().
-@@ -6069,7 +6069,7 @@ static int process_backlog(struct napi_s
+@@ -6073,7 +6073,7 @@ static int process_backlog(struct napi_s
  			skb_queue_splice_tail_init(&sd->input_pkt_queue,
  						   &sd->process_queue);
  		}
diff --git a/target/linux/generic/backport-6.6/611-02-v6.11-net-Make-USO-depend-on-CSUM-offload.patch b/target/linux/generic/backport-6.6/611-02-v6.11-net-Make-USO-depend-on-CSUM-offload.patch
index 30758f180f..42aff7f0af 100644
--- a/target/linux/generic/backport-6.6/611-02-v6.11-net-Make-USO-depend-on-CSUM-offload.patch
+++ b/target/linux/generic/backport-6.6/611-02-v6.11-net-Make-USO-depend-on-CSUM-offload.patch
@@ -20,7 +20,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -9755,6 +9755,15 @@ static void netdev_sync_lower_features(s
+@@ -9759,6 +9759,15 @@ static void netdev_sync_lower_features(s
  	}
  }
  
@@ -36,7 +36,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  static netdev_features_t netdev_fix_features(struct net_device *dev,
  	netdev_features_t features)
  {
-@@ -9836,15 +9845,9 @@ static netdev_features_t netdev_fix_feat
+@@ -9840,15 +9849,9 @@ static netdev_features_t netdev_fix_feat
  		features &= ~NETIF_F_LRO;
  	}
  
@@ -55,7 +55,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  	}
  
  	if ((features & NETIF_F_HW_TLS_RX) && !(features & NETIF_F_RXCSUM)) {
-@@ -9852,6 +9855,11 @@ static netdev_features_t netdev_fix_feat
+@@ -9856,6 +9859,11 @@ static netdev_features_t netdev_fix_feat
  		features &= ~NETIF_F_HW_TLS_RX;
  	}
  
diff --git a/target/linux/generic/backport-6.6/612-v6.9-net-get-stats64-if-device-if-driver-is-configured.patch b/target/linux/generic/backport-6.6/612-v6.9-net-get-stats64-if-device-if-driver-is-configured.patch
index 2db89c5a05..d72882dbb6 100644
--- a/target/linux/generic/backport-6.6/612-v6.9-net-get-stats64-if-device-if-driver-is-configured.patch
+++ b/target/linux/generic/backport-6.6/612-v6.9-net-get-stats64-if-device-if-driver-is-configured.patch
@@ -18,7 +18,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -10662,6 +10662,8 @@ struct rtnl_link_stats64 *dev_get_stats(
+@@ -10666,6 +10666,8 @@ struct rtnl_link_stats64 *dev_get_stats(
  		ops->ndo_get_stats64(dev, storage);
  	} else if (ops->ndo_get_stats) {
  		netdev_stats_to_stats64(storage, ops->ndo_get_stats(dev));
diff --git a/target/linux/generic/backport-6.6/700-v6.10-net-create-a-dummy-net_device-allocator.patch b/target/linux/generic/backport-6.6/700-v6.10-net-create-a-dummy-net_device-allocator.patch
index aea95667e5..3f48a8c34a 100644
--- a/target/linux/generic/backport-6.6/700-v6.10-net-create-a-dummy-net_device-allocator.patch
+++ b/target/linux/generic/backport-6.6/700-v6.10-net-create-a-dummy-net_device-allocator.patch
@@ -49,7 +49,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  				    unsigned char name_assign_type,
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -10349,25 +10349,12 @@ err_free_name:
+@@ -10353,25 +10353,12 @@ err_free_name:
  }
  EXPORT_SYMBOL(register_netdevice);
  
@@ -79,7 +79,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	/* make sure we BUG if trying to hit standard
  	 * register/unregister code path
  	 */
-@@ -10387,12 +10374,32 @@ int init_dummy_netdev(struct net_device
+@@ -10391,12 +10378,32 @@ int init_dummy_netdev(struct net_device
  	 * because users of this 'device' dont need to change
  	 * its refcount.
  	 */
@@ -113,7 +113,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  /**
   *	register_netdev	- register a network device
   *	@dev: device to register
-@@ -10986,6 +10993,19 @@ void free_netdev(struct net_device *dev)
+@@ -10990,6 +10997,19 @@ void free_netdev(struct net_device *dev)
  EXPORT_SYMBOL(free_netdev);
  
  /**
diff --git a/target/linux/generic/backport-6.6/770-net-introduce-napi_is_scheduled-helper.patch b/target/linux/generic/backport-6.6/770-net-introduce-napi_is_scheduled-helper.patch
index 838bd03c8c..d7b2b27506 100644
--- a/target/linux/generic/backport-6.6/770-net-introduce-napi_is_scheduled-helper.patch
+++ b/target/linux/generic/backport-6.6/770-net-introduce-napi_is_scheduled-helper.patch
@@ -85,7 +85,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  /**
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -6606,7 +6606,7 @@ static int __napi_poll(struct napi_struc
+@@ -6610,7 +6610,7 @@ static int __napi_poll(struct napi_struc
  	 * accidentally calling ->poll() when NAPI is not scheduled.
  	 */
  	work = 0;
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 60dfe4c035..66a9251438 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
@@ -42,7 +42,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	u64_stats_update_begin(&txq_stats->napi_syncp);
  	u64_stats_add(&txq_stats->napi.tx_packets, tx_packets);
-@@ -5590,6 +5594,7 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5602,6 +5606,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 <pabeni at redhat.com>
  	u32 chan = ch->index;
  	int work_done;
  
-@@ -5598,7 +5603,7 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5610,7 +5615,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 <pabeni at redhat.com>
  	work_done = min(work_done, budget);
  
  	if (work_done < budget && napi_complete_done(napi, work_done)) {
-@@ -5609,6 +5614,10 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5621,6 +5626,10 @@ static int stmmac_napi_poll_tx(struct na
  		spin_unlock_irqrestore(&ch->lock, flags);
  	}
  
@@ -70,7 +70,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	return work_done;
  }
  
-@@ -5617,6 +5626,7 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5629,6 +5638,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 <pabeni at redhat.com>
  	int rx_done, tx_done, rxtx_done;
  	struct stmmac_rxq_stats *rxq_stats;
  	struct stmmac_txq_stats *txq_stats;
-@@ -5632,7 +5642,7 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5644,7 +5654,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 <pabeni at redhat.com>
  	tx_done = min(tx_done, budget);
  
  	rx_done = stmmac_rx_zc(priv, budget, chan);
-@@ -5657,6 +5667,10 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5669,6 +5679,10 @@ static int stmmac_napi_poll_rxtx(struct
  		spin_unlock_irqrestore(&ch->lock, flags);
  	}
  
diff --git a/target/linux/generic/backport-6.6/900-v6.11-net-free_netdev-exit-earlier-if-dummy.patch b/target/linux/generic/backport-6.6/900-v6.11-net-free_netdev-exit-earlier-if-dummy.patch
index 9e38d88e22..21db87419e 100644
--- a/target/linux/generic/backport-6.6/900-v6.11-net-free_netdev-exit-earlier-if-dummy.patch
+++ b/target/linux/generic/backport-6.6/900-v6.11-net-free_netdev-exit-earlier-if-dummy.patch
@@ -23,7 +23,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -10979,7 +10979,8 @@ void free_netdev(struct net_device *dev)
+@@ -10983,7 +10983,8 @@ void free_netdev(struct net_device *dev)
  	dev->xdp_bulkq = NULL;
  
  	/*  Compatibility with error handling in drivers */
diff --git a/target/linux/generic/hack-6.6/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch b/target/linux/generic/hack-6.6/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
index 85a19027fd..1c5fb11ff5 100644
--- a/target/linux/generic/hack-6.6/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
+++ b/target/linux/generic/hack-6.6/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
@@ -19,7 +19,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
 
 --- a/drivers/base/core.c
 +++ b/drivers/base/core.c
-@@ -1658,7 +1658,7 @@ static void device_links_purge(struct de
+@@ -1657,7 +1657,7 @@ static void device_links_purge(struct de
  #define FW_DEVLINK_FLAGS_RPM		(FW_DEVLINK_FLAGS_ON | \
  					 DL_FLAG_PM_RUNTIME)
  
diff --git a/target/linux/qualcommax/patches-6.6/0061-v6.8-phy-qcom-qmp-usb-fix-serdes-init-sequence-for-IPQ6018.patch b/target/linux/qualcommax/patches-6.6/0061-v6.8-phy-qcom-qmp-usb-fix-serdes-init-sequence-for-IPQ6018.patch
index 4082e3d852..9021b572e8 100644
--- a/target/linux/qualcommax/patches-6.6/0061-v6.8-phy-qcom-qmp-usb-fix-serdes-init-sequence-for-IPQ6018.patch
+++ b/target/linux/qualcommax/patches-6.6/0061-v6.8-phy-qcom-qmp-usb-fix-serdes-init-sequence-for-IPQ6018.patch
@@ -47,7 +47,7 @@ Signed-off-by: Vinod Koul <vkoul at kernel.org>
  static const struct qmp_phy_cfg ipq8074_usb3phy_cfg = {
  	.lanes			= 1,
  
-@@ -2238,7 +2258,7 @@ err_node_put:
+@@ -2239,7 +2259,7 @@ err_node_put:
  static const struct of_device_id qmp_usb_of_match_table[] = {
  	{
  		.compatible = "qcom,ipq6018-qmp-usb3-phy",
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 ad8b92f715..25849e7c26 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 <mcroce at microsoft.com>
  
  	if (priv->dma_cap.host_dma_width <= 32)
  		gfp |= GFP_DMA32;
-@@ -4673,7 +4673,7 @@ static inline void stmmac_rx_refill(stru
+@@ -4685,7 +4685,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;




More information about the lede-commits mailing list