[openwrt/openwrt] generic: 6.1: refresh hack patches

LEDE Commits lede-commits at lists.infradead.org
Mon May 22 13:40:30 PDT 2023


ansuel pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/aa56d00aa624ffdc3ed839300d1284f890d31bf7

commit aa56d00aa624ffdc3ed839300d1284f890d31bf7
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Mon May 22 18:07:13 2023 +0200

    generic: 6.1: refresh hack patches
    
    Refresh hack patches with make target/linux/refresh.
    
    Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
---
 .../linux/generic/hack-6.1/204-module_strip.patch  | 38 ++++++++++----------
 ...onfig-abort-configuration-on-unset-symbol.patch |  4 +--
 .../hack-6.1/210-darwin_scripts_include.patch      |  4 +--
 .../generic/hack-6.1/212-tools_portability.patch   | 29 +--------------
 .../generic/hack-6.1/220-arm-gc_sections.patch     |  8 ++---
 .../generic/hack-6.1/221-module_exports.patch      | 16 ++++-----
 .../hack-6.1/230-openwrt_lzma_options.patch        |  4 +--
 .../generic/hack-6.1/250-netfilter_depends.patch   |  4 +--
 target/linux/generic/hack-6.1/251-kconfig.patch    | 24 ++++++-------
 .../linux/generic/hack-6.1/253-ksmbd-config.patch  |  4 +--
 .../generic/hack-6.1/259-regmap_dynamic.patch      |  2 +-
 .../hack-6.1/260-crypto_test_dependencies.patch    |  2 +-
 .../generic/hack-6.1/261-lib-arc4-unhide.patch     |  2 +-
 .../linux/generic/hack-6.1/280-rfkill-stubs.patch  |  2 +-
 .../hack-6.1/321-powerpc_crtsavres_prereq.patch    |  2 +-
 ...-blktrans-call-add-disks-after-mtd-device.patch |  6 ++--
 .../hack-6.1/410-block-fit-partition-parser.patch  | 20 +++++------
 ...mtd-support-OpenWrt-s-MTD_ROOTFS_ROOT_DEV.patch |  2 +-
 .../generic/hack-6.1/430-mtk-bmt-support.patch     |  2 +-
 .../generic/hack-6.1/600-bridge_offload.patch      | 42 +++++++++++-----------
 ...netfilter-connmark-introduce-set-dscpmark.patch |  4 +--
 .../650-netfilter-add-xt_FLOWOFFLOAD-target.patch  | 12 +++----
 .../hack-6.1/651-wireless_mesh_header.patch        |  2 +-
 .../generic/hack-6.1/660-fq_codel_defaults.patch   |  2 +-
 ...nel-ct-size-the-hashtable-more-adequately.patch |  2 +-
 ...1-net-dsa-mv88e6xxx-disable-ATU-violation.patch |  2 +-
 .../hack-6.1/720-net-phy-add-aqr-phys.patch        | 16 ++++-----
 .../hack-6.1/721-net-add-packet-mangeling.patch    | 18 +++++-----
 ...net-phy-aquantia-enable-AQR112-and-AQR412.patch | 15 ++++----
 ...-phy-aquantia-fix-system-side-protocol-mi.patch |  2 +-
 ...et-phy-aquantia-Add-AQR113-driver-support.patch |  9 ++---
 ...-aquantia-add-PHY_IDs-for-AQR112-variants.patch |  7 ++--
 ...t-usb-r8152-add-LED-configuration-from-OF.patch |  8 ++---
 .../765-mxl-gpy-control-LED-reg-from-DT.patch      | 16 ++++-----
 .../hack-6.1/773-bgmac-add-srab-switch.patch       |  4 +--
 .../780-usb-net-MeigLink_modem_support.patch       |  6 ++--
 .../hack-6.1/790-SFP-GE-T-ignore-TX_FAULT.patch    | 14 ++++----
 .../hack-6.1/800-GPIO-add-named-gpio-exports.patch | 12 +++----
 .../generic/hack-6.1/901-debloat_sock_diag.patch   | 18 +++++-----
 .../linux/generic/hack-6.1/902-debloat_proc.patch  | 30 ++++++++--------
 .../generic/hack-6.1/904-debloat_dma_buf.patch     | 13 ++++---
 .../911-kobject_add_broadcast_uevent.patch         |  2 +-
 .../generic/hack-6.1/920-device_tree_cmdline.patch |  4 +--
 ...rt-Revert-driver-core-Set-fw_devlink-on-b.patch |  2 +-
 44 files changed, 205 insertions(+), 232 deletions(-)

diff --git a/target/linux/generic/hack-6.1/204-module_strip.patch b/target/linux/generic/hack-6.1/204-module_strip.patch
index ee39d15095..f0949d32fd 100644
--- a/target/linux/generic/hack-6.1/204-module_strip.patch
+++ b/target/linux/generic/hack-6.1/204-module_strip.patch
@@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/include/linux/module.h
 +++ b/include/linux/module.h
-@@ -164,6 +164,7 @@ extern void cleanup_module(void);
+@@ -163,6 +163,7 @@ extern void cleanup_module(void);
  
  /* Generic info of form tag = "info" */
  #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
@@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  /* For userspace: you can also call me... */
  #define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias)
-@@ -233,12 +234,12 @@ extern void cleanup_module(void);
+@@ -232,12 +233,12 @@ extern void cleanup_module(void);
   * Author(s), use "Name <email>" or just "Name", for multiple
   * authors use multiple MODULE_AUTHOR() statements/lines.
   */
@@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  /* Creates an alias so file2alias.c can find device table. */
  #define MODULE_DEVICE_TABLE(type, name)					\
  extern typeof(name) __mod_##type##__##name##_device_table		\
-@@ -265,7 +266,9 @@ extern typeof(name) __mod_##type##__##na
+@@ -264,7 +265,9 @@ extern typeof(name) __mod_##type##__##na
   */
  
  #if defined(MODULE) || !defined(CONFIG_SYSFS)
@@ -49,14 +49,14 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #else
  #define MODULE_VERSION(_version)					\
  	MODULE_INFO(version, _version);					\
-@@ -288,7 +291,7 @@ extern typeof(name) __mod_##type##__##na
+@@ -287,7 +290,7 @@ extern typeof(name) __mod_##type##__##na
  /* Optional firmware file (or files) needed by the module
   * format is simply firmware file name.  Multiple firmware
   * files require multiple MODULE_FIRMWARE() specifiers */
 -#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware)
 +#define MODULE_FIRMWARE(_firmware) MODULE_INFO_STRIP(firmware, _firmware)
  
- #define MODULE_IMPORT_NS(ns) MODULE_INFO(import_ns, #ns)
+ #define MODULE_IMPORT_NS(ns)	MODULE_INFO(import_ns, __stringify(ns))
  
 --- a/include/linux/moduleparam.h
 +++ b/include/linux/moduleparam.h
@@ -88,9 +88,9 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/kernel/module/Kconfig
 +++ b/kernel/module/Kconfig
-@@ -2352,6 +2352,13 @@ config UNUSED_KSYMS_WHITELIST
- 	  one per line. The path can be absolute, or relative to the kernel
- 	  source tree.
+@@ -290,4 +290,11 @@ config MODULES_TREE_LOOKUP
+ 	def_bool y
+ 	depends on PERF_EVENTS || TRACING || CFI_CLANG
  
 +config MODULE_STRIPPED
 +	bool "Reduce module size"
@@ -100,11 +100,9 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 +	  device tables, etc.
 +
  endif # MODULES
- 
- config MODULES_TREE_LOOKUP
 --- a/kernel/module/main.c
 +++ b/kernel/module/main.c
-@@ -1218,6 +1218,7 @@ static struct module_attribute *modinfo_
+@@ -988,6 +988,7 @@ size_t modinfo_attrs_count = ARRAY_SIZE(
  
  static const char vermagic[] = VERMAGIC_STRING;
  
@@ -112,7 +110,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  int try_to_force_load(struct module *mod, const char *reason)
  {
  #ifdef CONFIG_MODULE_FORCE_LOAD
-@@ -1229,6 +1230,7 @@ static int try_to_force_load(struct modu
+@@ -999,6 +1000,7 @@ int try_to_force_load(struct module *mod
  	return -ENOEXEC;
  #endif
  }
@@ -120,7 +118,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  static char *get_modinfo(const struct load_info *info, const char *tag);
  static char *get_next_modinfo(const struct load_info *info, const char *tag,
-@@ -3266,9 +3268,11 @@ static int setup_load_info(struct load_i
+@@ -1950,9 +1952,11 @@ static int setup_load_info(struct load_i
  
  static int check_modinfo(struct module *mod, struct load_info *info, int flags)
  {
@@ -133,7 +131,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (flags & MODULE_INIT_IGNORE_VERMAGIC)
  		modmagic = NULL;
  
-@@ -3289,6 +3293,7 @@ static int check_modinfo(struct module *
+@@ -1973,6 +1977,7 @@ static int check_modinfo(struct module *
  				mod->name);
  		add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK);
  	}
@@ -143,7 +141,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/scripts/mod/modpost.c
 +++ b/scripts/mod/modpost.c
-@@ -2034,7 +2034,9 @@ static void read_symbols(const char *mod
+@@ -1817,7 +1817,9 @@ static void read_symbols(const char *mod
  		symname = remove_dot(info.strtab + sym->st_name);
  
  		handle_symbol(mod, &info, sym, symname);
@@ -153,7 +151,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	}
  
  	for (sym = info.symtab_start; sym < info.symtab_stop; sym++) {
-@@ -2213,8 +2215,10 @@ static void add_header(struct buffer *b,
+@@ -1980,8 +1982,10 @@ static void add_header(struct buffer *b,
  	buf_printf(b, "BUILD_SALT;\n");
  	buf_printf(b, "BUILD_LTO_INFO;\n");
  	buf_printf(b, "\n");
@@ -164,7 +162,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	buf_printf(b, "\n");
  	buf_printf(b, "__visible struct module __this_module\n");
  	buf_printf(b, "__section(\".gnu.linkonce.this_module\") = {\n");
-@@ -2231,8 +2235,10 @@ static void add_header(struct buffer *b,
+@@ -1995,8 +1999,10 @@ static void add_header(struct buffer *b,
  	buf_printf(b, "\t.arch = MODULE_ARCH_INIT,\n");
  	buf_printf(b, "};\n");
  
@@ -175,7 +173,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  	buf_printf(b,
  		   "\n"
-@@ -2245,8 +2251,10 @@ static void add_retpoline(struct buffer
+@@ -2004,8 +2010,10 @@ static void add_header(struct buffer *b,
  		   "MODULE_INFO(retpoline, \"Y\");\n"
  		   "#endif\n");
  
@@ -186,7 +184,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  	if (strstarts(mod->name, "tools/testing"))
  		buf_printf(b, "\nMODULE_INFO(test, \"Y\");\n");
-@@ -2326,11 +2334,13 @@ static void add_depends(struct buffer *b
+@@ -2101,11 +2109,13 @@ static void add_depends(struct buffer *b
  
  static void add_srcversion(struct buffer *b, struct module *mod)
  {
@@ -200,7 +198,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  }
  
  static void write_buf(struct buffer *b, const char *fname)
-@@ -2579,7 +2589,9 @@ int main(int argc, char **argv)
+@@ -2191,7 +2201,9 @@ static void write_mod_c_file(struct modu
  	add_exported_symbols(&buf, mod);
  	add_versions(&buf, mod);
  	add_depends(&buf, mod);
diff --git a/target/linux/generic/hack-6.1/205-kconfig-abort-configuration-on-unset-symbol.patch b/target/linux/generic/hack-6.1/205-kconfig-abort-configuration-on-unset-symbol.patch
index a87c7a5116..df18507041 100644
--- a/target/linux/generic/hack-6.1/205-kconfig-abort-configuration-on-unset-symbol.patch
+++ b/target/linux/generic/hack-6.1/205-kconfig-abort-configuration-on-unset-symbol.patch
@@ -19,7 +19,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
 
 --- a/scripts/kconfig/conf.c
 +++ b/scripts/kconfig/conf.c
-@@ -341,6 +341,9 @@ static int conf_askvalue(struct symbol *
+@@ -338,6 +338,9 @@ static int conf_askvalue(struct symbol *
  		}
  		/* fall through */
  	default:
@@ -29,7 +29,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  		fflush(stdout);
  		xfgets(line, sizeof(line), stdin);
  		break;
-@@ -523,6 +526,9 @@ static int conf_choice(struct menu *menu
+@@ -520,6 +523,9 @@ static int conf_choice(struct menu *menu
  			}
  			/* fall through */
  		case oldaskconfig:
diff --git a/target/linux/generic/hack-6.1/210-darwin_scripts_include.patch b/target/linux/generic/hack-6.1/210-darwin_scripts_include.patch
index be6adc0d11..c9612536de 100644
--- a/target/linux/generic/hack-6.1/210-darwin_scripts_include.patch
+++ b/target/linux/generic/hack-6.1/210-darwin_scripts_include.patch
@@ -3039,7 +3039,7 @@ Signed-off-by: Florian Fainelli <f.fainelli at gmail.com>
  main(int argc, char **argv)
 --- a/scripts/mod/modpost.h
 +++ b/scripts/mod/modpost.h
-@@ -8,7 +8,11 @@
+@@ -9,7 +9,11 @@
  #include <sys/mman.h>
  #include <fcntl.h>
  #include <unistd.h>
@@ -3049,5 +3049,5 @@ Signed-off-by: Florian Fainelli <f.fainelli at gmail.com>
 +#include "elf.h"
 +#endif
  
+ #include "list.h"
  #include "elfconfig.h"
- 
diff --git a/target/linux/generic/hack-6.1/212-tools_portability.patch b/target/linux/generic/hack-6.1/212-tools_portability.patch
index 0b908f7c7d..4b1c6c4983 100644
--- a/target/linux/generic/hack-6.1/212-tools_portability.patch
+++ b/target/linux/generic/hack-6.1/212-tools_portability.patch
@@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  struct kmem_cache;
 --- a/tools/perf/pmu-events/jevents.py
 +++ b/tools/perf/pmu-events/jevents.py
-@@ -684,6 +684,7 @@
+@@ -684,6 +684,7 @@ def main() -> None:
  #include "util/header.h"
  #include "util/pmu.h"
  #include <string.h>
@@ -91,30 +91,3 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <stddef.h>
  
  struct compact_pmu_event {
-# --- a/tools/perf/pmu-events/jevents.c
-# +++ b/tools/perf/pmu-events/jevents.c
-# @@ -1,4 +1,6 @@
-# +#ifdef __linux__
-#  #define  _XOPEN_SOURCE 500	/* needed for nftw() */
-# +#endif
-#  #define  _GNU_SOURCE		/* needed for asprintf() */
- 
-#  /* Parse event JSON files */
-# @@ -35,6 +37,7 @@
-#  #include <stdlib.h>
-#  #include <errno.h>
-#  #include <string.h>
-# +#include <strings.h>
-#  #include <ctype.h>
-#  #include <unistd.h>
-#  #include <stdarg.h>
-# --- a/tools/perf/pmu-events/json.c
-# +++ b/tools/perf/pmu-events/json.c
-# @@ -38,7 +38,6 @@
-#  #include <unistd.h>
-#  #include "jsmn.h"
-#  #include "json.h"
-# -#include <linux/kernel.h>
- 
- 
-#  static char *mapfile(const char *fn, size_t *size)
diff --git a/target/linux/generic/hack-6.1/220-arm-gc_sections.patch b/target/linux/generic/hack-6.1/220-arm-gc_sections.patch
index 0aa3eb840c..483118138e 100644
--- a/target/linux/generic/hack-6.1/220-arm-gc_sections.patch
+++ b/target/linux/generic/hack-6.1/220-arm-gc_sections.patch
@@ -12,7 +12,7 @@ Signed-off-by: Gabor Juhos <juhosg at openwrt.org>
 ---
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -117,6 +117,7 @@ config ARM
+@@ -122,6 +122,7 @@ config ARM
  	select HAVE_UID16
  	select HAVE_VIRT_CPU_ACCOUNTING_GEN
  	select IRQ_FORCED_THREADING
@@ -22,14 +22,14 @@ Signed-off-by: Gabor Juhos <juhosg at openwrt.org>
  	select OF_EARLY_FLATTREE if OF
 --- a/arch/arm/boot/compressed/Makefile
 +++ b/arch/arm/boot/compressed/Makefile
-@@ -92,6 +92,7 @@ endif
+@@ -91,6 +91,7 @@ endif
  ifeq ($(CONFIG_USE_OF),y)
  OBJS	+= $(libfdt_objs) fdt_check_mem_start.o
  endif
 +KBUILD_CFLAGS_KERNEL := $(patsubst -f%-sections,,$(KBUILD_CFLAGS_KERNEL))
  
- # -fstack-protector-strong triggers protection checks in this code,
- # but it is being used too early to link to meaningful stack_chk logic.
+ OBJS	+= lib1funcs.o ashldi3.o bswapsdi2.o
+ 
 --- a/arch/arm/kernel/vmlinux.lds.S
 +++ b/arch/arm/kernel/vmlinux.lds.S
 @@ -75,7 +75,7 @@ SECTIONS
diff --git a/target/linux/generic/hack-6.1/221-module_exports.patch b/target/linux/generic/hack-6.1/221-module_exports.patch
index adc2cefbd2..d1ff81613a 100644
--- a/target/linux/generic/hack-6.1/221-module_exports.patch
+++ b/target/linux/generic/hack-6.1/221-module_exports.patch
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  /* Align . to a 8 byte boundary equals to maximum function alignment. */
  #define ALIGN_FUNCTION()  . = ALIGN(8)
  
-@@ -485,14 +495,14 @@
+@@ -512,14 +522,14 @@
  	/* Kernel symbol table: Normal symbols */			\
  	__ksymtab         : AT(ADDR(__ksymtab) - LOAD_OFFSET) {		\
  		__start___ksymtab = .;					\
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		__stop___ksymtab_gpl = .;				\
  	}								\
  									\
-@@ -512,7 +522,7 @@
+@@ -539,7 +549,7 @@
  									\
  	/* Kernel symbol table: strings */				\
          __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) {	\
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	}								\
  									\
  	/* __*init sections */						\
-@@ -1018,6 +1028,8 @@
+@@ -1048,6 +1058,8 @@
  #define COMMON_DISCARDS							\
  	SANITIZER_DISCARDS						\
  	PATCHABLE_DISCARDS						\
@@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	*(.modinfo)							\
 --- a/include/linux/export.h
 +++ b/include/linux/export.h
-@@ -84,6 +84,12 @@ struct kernel_symbol {
+@@ -72,6 +72,12 @@ struct kernel_symbol {
  
  #else
  
@@ -80,7 +80,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  /*
   * For every exported symbol, do the following:
   *
-@@ -101,7 +107,7 @@ struct kernel_symbol {
+@@ -87,7 +93,7 @@ struct kernel_symbol {
  	extern typeof(sym) sym;							\
  	extern const char __kstrtab_##sym[];					\
  	extern const char __kstrtabns_##sym[];					\
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	    "__kstrtabns_" #sym ":					\n"	\
 --- a/include/asm-generic/export.h
 +++ b/include/asm-generic/export.h
-@@ -26,6 +26,12 @@
+@@ -31,6 +31,12 @@
  #endif
  .endm
  
@@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  /*
   * note on .section use: we specify progbits since usage of the "M" (SHF_MERGE)
   * section flag requires it. Use '%progbits' instead of '@progbits' since the
-@@ -39,7 +45,7 @@
+@@ -44,7 +50,7 @@
  __ksymtab_\name:
  	__put \val, __kstrtab_\name
  	.previous
@@ -115,7 +115,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	.previous
 --- a/scripts/Makefile.build
 +++ b/scripts/Makefile.build
-@@ -397,7 +397,7 @@ targets += $(real-dtb-y) $(lib-y) $(alwa
+@@ -388,7 +388,7 @@ targets += $(real-dtb-y) $(lib-y) $(alwa
  # Linker scripts preprocessor (.lds.S -> .lds)
  # ---------------------------------------------------------------------------
  quiet_cmd_cpp_lds_S = LDS     $@
diff --git a/target/linux/generic/hack-6.1/230-openwrt_lzma_options.patch b/target/linux/generic/hack-6.1/230-openwrt_lzma_options.patch
index a28878427a..55530c5c7e 100644
--- a/target/linux/generic/hack-6.1/230-openwrt_lzma_options.patch
+++ b/target/linux/generic/hack-6.1/230-openwrt_lzma_options.patch
@@ -23,7 +23,7 @@ Signed-off-by: Imre Kaloz <kaloz at openwrt.org>
  	{ {0x02, 0x21}, "lz4", unlz4 },
 --- a/scripts/Makefile.lib
 +++ b/scripts/Makefile.lib
-@@ -402,10 +402,10 @@ quiet_cmd_bzip2 = BZIP2   $@
+@@ -443,10 +443,10 @@ quiet_cmd_bzip2_with_size = BZIP2   $@
  # ---------------------------------------------------------------------------
  
  quiet_cmd_lzma = LZMA    $@
@@ -35,4 +35,4 @@ Signed-off-by: Imre Kaloz <kaloz at openwrt.org>
 +      cmd_lzma_with_size = { cat $(real-prereqs) | $(LZMA) e -d20 -lc1 -lp2 -pb2 -eos -si -so; $(size_append); } > $@
  
  quiet_cmd_lzo = LZO     $@
-       cmd_lzo = { cat $(real-prereqs) | $(KLZOP) -9; $(size_append); } > $@
+       cmd_lzo = cat $(real-prereqs) | $(KLZOP) -9 > $@
diff --git a/target/linux/generic/hack-6.1/250-netfilter_depends.patch b/target/linux/generic/hack-6.1/250-netfilter_depends.patch
index 495c73ffa8..fbb5a61157 100644
--- a/target/linux/generic/hack-6.1/250-netfilter_depends.patch
+++ b/target/linux/generic/hack-6.1/250-netfilter_depends.patch
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/net/netfilter/Kconfig
 +++ b/net/netfilter/Kconfig
-@@ -243,7 +243,6 @@ config NF_CONNTRACK_FTP
+@@ -253,7 +253,6 @@ config NF_CONNTRACK_FTP
  
  config NF_CONNTRACK_H323
  	tristate "H.323 protocol support"
@@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	depends on NETFILTER_ADVANCED
  	help
  	  H.323 is a VoIP signalling protocol from ITU-T. As one of the most
-@@ -1106,7 +1105,6 @@ config NETFILTER_XT_TARGET_SECMARK
+@@ -1118,7 +1117,6 @@ config NETFILTER_XT_TARGET_SECMARK
  
  config NETFILTER_XT_TARGET_TCPMSS
  	tristate '"TCPMSS" target support'
diff --git a/target/linux/generic/hack-6.1/251-kconfig.patch b/target/linux/generic/hack-6.1/251-kconfig.patch
index 0e24c3e804..e1ecbca6fe 100644
--- a/target/linux/generic/hack-6.1/251-kconfig.patch
+++ b/target/linux/generic/hack-6.1/251-kconfig.patch
@@ -16,8 +16,8 @@ Signed-off-by: John Crispin <john at phrozen.org>
 
 --- a/crypto/Kconfig
 +++ b/crypto/Kconfig
-@@ -34,7 +34,7 @@ config CRYPTO_FIPS
- 	  this is.
+@@ -55,7 +55,7 @@ config CRYPTO_FIPS_VERSION
+ 	  By default the KERNELRELEASE value is used.
  
  config CRYPTO_ALGAPI
 -	tristate
@@ -25,7 +25,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_ALGAPI2
  	help
  	  This option provides the API for cryptographic algorithms.
-@@ -43,7 +43,7 @@ config CRYPTO_ALGAPI2
+@@ -64,7 +64,7 @@ config CRYPTO_ALGAPI2
  	tristate
  
  config CRYPTO_AEAD
@@ -34,7 +34,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_AEAD2
  	select CRYPTO_ALGAPI
  
-@@ -54,7 +54,7 @@ config CRYPTO_AEAD2
+@@ -75,7 +75,7 @@ config CRYPTO_AEAD2
  	select CRYPTO_RNG2
  
  config CRYPTO_SKCIPHER
@@ -43,7 +43,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_SKCIPHER2
  	select CRYPTO_ALGAPI
  
-@@ -64,7 +64,7 @@ config CRYPTO_SKCIPHER2
+@@ -85,7 +85,7 @@ config CRYPTO_SKCIPHER2
  	select CRYPTO_RNG2
  
  config CRYPTO_HASH
@@ -52,7 +52,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_HASH2
  	select CRYPTO_ALGAPI
  
-@@ -73,7 +73,7 @@ config CRYPTO_HASH2
+@@ -94,7 +94,7 @@ config CRYPTO_HASH2
  	select CRYPTO_ALGAPI2
  
  config CRYPTO_RNG
@@ -92,7 +92,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	bool
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
-@@ -443,16 +443,16 @@ config BCH_CONST_T
+@@ -457,16 +457,16 @@ config BCH_CONST_T
  # Textsearch support is select'ed if needed
  #
  config TEXTSEARCH
@@ -115,8 +115,8 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	bool
 --- a/net/netfilter/Kconfig
 +++ b/net/netfilter/Kconfig
-@@ -11,7 +11,7 @@ config NETFILTER_INGRESS
- 	  infrastructure.
+@@ -22,7 +22,7 @@ config NETFILTER_SKIP_EGRESS
+ 	def_bool NETFILTER_EGRESS && (NET_CLS_ACT || IFB)
  
  config NETFILTER_NETLINK
 -	tristate
@@ -147,7 +147,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  
  config CFG80211
  	tristate "cfg80211 - wireless configuration API"
-@@ -204,7 +204,7 @@ config CFG80211_WEXT_EXPORT
+@@ -208,7 +208,7 @@ config CFG80211_WEXT_EXPORT
  endif # CFG80211
  
  config LIB80211
@@ -156,7 +156,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	default n
  	help
  	  This options enables a library of common routines used
-@@ -213,17 +213,17 @@ config LIB80211
+@@ -217,17 +217,17 @@ config LIB80211
  	  Drivers should select this themselves if needed.
  
  config LIB80211_CRYPT_WEP
@@ -199,7 +199,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	bool
 --- a/net/Kconfig
 +++ b/net/Kconfig
-@@ -432,7 +432,7 @@ config NET_DEVLINK
+@@ -430,7 +430,7 @@ config NET_DEVLINK
  	default n
  
  config PAGE_POOL
diff --git a/target/linux/generic/hack-6.1/253-ksmbd-config.patch b/target/linux/generic/hack-6.1/253-ksmbd-config.patch
index b8cb94f62b..b0c379657e 100644
--- a/target/linux/generic/hack-6.1/253-ksmbd-config.patch
+++ b/target/linux/generic/hack-6.1/253-ksmbd-config.patch
@@ -10,7 +10,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string
 
 --- a/init/Kconfig
 +++ b/init/Kconfig
-@@ -2388,7 +2388,7 @@ config PADATA
+@@ -2003,7 +2003,7 @@ config PADATA
  	bool
  
  config ASN1
@@ -21,7 +21,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string
  	  that can be interpreted by the ASN.1 stream decoder and used to
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
-@@ -614,7 +614,7 @@ config LIBFDT
+@@ -637,7 +637,7 @@ config LIBFDT
  	bool
  
  config OID_REGISTRY
diff --git a/target/linux/generic/hack-6.1/259-regmap_dynamic.patch b/target/linux/generic/hack-6.1/259-regmap_dynamic.patch
index 8cf6c035e5..407bc72ac8 100644
--- a/target/linux/generic/hack-6.1/259-regmap_dynamic.patch
+++ b/target/linux/generic/hack-6.1/259-regmap_dynamic.patch
@@ -125,7 +125,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <linux/mutex.h>
  #include <linux/err.h>
  #include <linux/property.h>
-@@ -3348,3 +3349,5 @@ static int __init regmap_initcall(void)
+@@ -3511,3 +3512,5 @@ static int __init regmap_initcall(void)
  	return 0;
  }
  postcore_initcall(regmap_initcall);
diff --git a/target/linux/generic/hack-6.1/260-crypto_test_dependencies.patch b/target/linux/generic/hack-6.1/260-crypto_test_dependencies.patch
index 64daa82743..7ea517496e 100644
--- a/target/linux/generic/hack-6.1/260-crypto_test_dependencies.patch
+++ b/target/linux/generic/hack-6.1/260-crypto_test_dependencies.patch
@@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/crypto/Kconfig
 +++ b/crypto/Kconfig
-@@ -121,13 +121,13 @@ config CRYPTO_MANAGER
+@@ -142,13 +142,13 @@ config CRYPTO_MANAGER
  	  cbc(aes).
  
  config CRYPTO_MANAGER2
diff --git a/target/linux/generic/hack-6.1/261-lib-arc4-unhide.patch b/target/linux/generic/hack-6.1/261-lib-arc4-unhide.patch
index ee923c73f7..01829b2d51 100644
--- a/target/linux/generic/hack-6.1/261-lib-arc4-unhide.patch
+++ b/target/linux/generic/hack-6.1/261-lib-arc4-unhide.patch
@@ -13,7 +13,7 @@ from backports.
 
 --- a/lib/crypto/Kconfig
 +++ b/lib/crypto/Kconfig
-@@ -6,7 +6,7 @@ config CRYPTO_LIB_AES
+@@ -9,7 +9,7 @@ config CRYPTO_LIB_AES
  	tristate
  
  config CRYPTO_LIB_ARC4
diff --git a/target/linux/generic/hack-6.1/280-rfkill-stubs.patch b/target/linux/generic/hack-6.1/280-rfkill-stubs.patch
index 7a650d132e..ff6638f7a0 100644
--- a/target/linux/generic/hack-6.1/280-rfkill-stubs.patch
+++ b/target/linux/generic/hack-6.1/280-rfkill-stubs.patch
@@ -26,7 +26,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
   * @name: name of the struct -- the string is not copied internally
 --- a/net/Makefile
 +++ b/net/Makefile
-@@ -52,7 +52,7 @@ obj-$(CONFIG_TIPC)		+= tipc/
+@@ -51,7 +51,7 @@ obj-$(CONFIG_TIPC)		+= tipc/
  obj-$(CONFIG_NETLABEL)		+= netlabel/
  obj-$(CONFIG_IUCV)		+= iucv/
  obj-$(CONFIG_SMC)		+= smc/
diff --git a/target/linux/generic/hack-6.1/321-powerpc_crtsavres_prereq.patch b/target/linux/generic/hack-6.1/321-powerpc_crtsavres_prereq.patch
index 215528a90c..17eba0b354 100644
--- a/target/linux/generic/hack-6.1/321-powerpc_crtsavres_prereq.patch
+++ b/target/linux/generic/hack-6.1/321-powerpc_crtsavres_prereq.patch
@@ -16,7 +16,7 @@ Signed-off-by: Alexandros C. Couloumbis <alex at ozo.com>
 
 --- a/arch/powerpc/Makefile
 +++ b/arch/powerpc/Makefile
-@@ -61,19 +61,6 @@ machine-$(CONFIG_PPC64) += 64
+@@ -42,19 +42,6 @@ machine-$(CONFIG_PPC64) += 64
  machine-$(CONFIG_CPU_LITTLE_ENDIAN) += le
  UTS_MACHINE := $(subst $(space),,$(machine-y))
  
diff --git a/target/linux/generic/hack-6.1/402-mtd-blktrans-call-add-disks-after-mtd-device.patch b/target/linux/generic/hack-6.1/402-mtd-blktrans-call-add-disks-after-mtd-device.patch
index 7999f5ac6d..c0fa2ddabf 100644
--- a/target/linux/generic/hack-6.1/402-mtd-blktrans-call-add-disks-after-mtd-device.patch
+++ b/target/linux/generic/hack-6.1/402-mtd-blktrans-call-add-disks-after-mtd-device.patch
@@ -25,7 +25,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
 
 --- a/drivers/mtd/mtd_blkdevs.c
 +++ b/drivers/mtd/mtd_blkdevs.c
-@@ -384,19 +384,8 @@ int add_mtd_blktrans_dev(struct mtd_blkt
+@@ -386,19 +386,8 @@ int add_mtd_blktrans_dev(struct mtd_blkt
  	if (new->readonly)
  		set_disk_ro(gd, 1);
  
@@ -45,7 +45,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  out_free_tag_set:
  	blk_mq_free_tag_set(new->tag_set);
  out_kfree_tag_set:
-@@ -402,6 +395,35 @@ out_list_del:
+@@ -408,6 +397,35 @@ out_list_del:
  	return ret;
  }
  
@@ -91,7 +91,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  
  #include "mtdcore.h"
  
-@@ -1082,6 +1083,8 @@ int mtd_device_parse_register(struct mtd
+@@ -1074,6 +1075,8 @@ int mtd_device_parse_register(struct mtd
  		register_reboot_notifier(&mtd->reboot_notifier);
  	}
  
diff --git a/target/linux/generic/hack-6.1/410-block-fit-partition-parser.patch b/target/linux/generic/hack-6.1/410-block-fit-partition-parser.patch
index 854621bb58..0384dad85e 100644
--- a/target/linux/generic/hack-6.1/410-block-fit-partition-parser.patch
+++ b/target/linux/generic/hack-6.1/410-block-fit-partition-parser.patch
@@ -19,7 +19,7 @@ Subject: [PATCH] kernel: add block fit partition parser
 
 --- a/block/blk.h
 +++ b/block/blk.h
-@@ -354,6 +354,8 @@ void blk_free_ext_minor(unsigned int min
+@@ -414,6 +414,8 @@ void blk_free_ext_minor(unsigned int min
  #define ADDPART_FLAG_NONE	0
  #define ADDPART_FLAG_RAID	1
  #define ADDPART_FLAG_WHOLEDISK	2
@@ -30,7 +30,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  int bdev_del_partition(struct gendisk *disk, int partno);
 --- a/block/partitions/Kconfig
 +++ b/block/partitions/Kconfig
-@@ -101,6 +101,13 @@ config ATARI_PARTITION
+@@ -103,6 +103,13 @@ config ATARI_PARTITION
  	  Say Y here if you would like to use hard disks under Linux which
  	  were partitioned under the Atari OS.
  
@@ -56,7 +56,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  obj-$(CONFIG_LDM_PARTITION) += ldm.o
 --- a/block/partitions/check.h
 +++ b/block/partitions/check.h
-@@ -58,6 +58,7 @@ int amiga_partition(struct parsed_partit
+@@ -57,6 +57,7 @@ int amiga_partition(struct parsed_partit
  int atari_partition(struct parsed_partitions *state);
  int cmdline_partition(struct parsed_partitions *state);
  int efi_partition(struct parsed_partitions *state);
@@ -64,7 +64,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  int ibm_partition(struct parsed_partitions *);
  int karma_partition(struct parsed_partitions *state);
  int ldm_partition(struct parsed_partitions *state);
-@@ -68,3 +69,5 @@ int sgi_partition(struct parsed_partitio
+@@ -67,3 +68,5 @@ int sgi_partition(struct parsed_partitio
  int sun_partition(struct parsed_partitions *state);
  int sysv68_partition(struct parsed_partitions *state);
  int ultrix_partition(struct parsed_partitions *state);
@@ -72,9 +72,9 @@ Subject: [PATCH] kernel: add block fit partition parser
 +int parse_fit_partitions(struct parsed_partitions *state, u64 start_sector, u64 nr_sectors, int *slot, int add_remain);
 --- a/block/partitions/core.c
 +++ b/block/partitions/core.c
-@@ -12,6 +12,10 @@
+@@ -10,6 +10,10 @@
+ #include <linux/ctype.h>
  #include <linux/vmalloc.h>
- #include <linux/blktrace_api.h>
  #include <linux/raid/detect.h>
 +#ifdef CONFIG_FIT_PARTITION
 +#include <linux/root_dev.h>
@@ -83,7 +83,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  #include "check.h"
  
  static int (*check_part[])(struct parsed_partitions *) = {
-@@ -48,6 +52,9 @@ static int (*check_part[])(struct parsed
+@@ -46,6 +50,9 @@ static int (*check_part[])(struct parsed
  #ifdef CONFIG_EFI_PARTITION
  	efi_partition,		/* this must come before msdos */
  #endif
@@ -93,7 +93,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  #ifdef CONFIG_SGI_PARTITION
  	sgi_partition,
  #endif
-@@ -408,6 +415,11 @@ static struct block_device *add_partitio
+@@ -398,6 +405,11 @@ static struct block_device *add_partitio
  			goto out_del;
  	}
  
@@ -105,7 +105,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  	/* everything is up and running, commence */
  	err = xa_insert(&disk->part_tbl, partno, bdev, GFP_KERNEL);
  	if (err)
-@@ -598,6 +610,11 @@ static bool blk_add_partition(struct gen
+@@ -585,6 +597,11 @@ static bool blk_add_partition(struct gen
  	    (state->parts[p].flags & ADDPART_FLAG_RAID))
  		md_autodetect_dev(part->bd_dev);
  
@@ -143,7 +143,7 @@ Subject: [PATCH] kernel: add block fit partition parser
  	kfree(gpt);
 --- a/block/partitions/efi.h
 +++ b/block/partitions/efi.h
-@@ -52,6 +52,9 @@
+@@ -51,6 +51,9 @@
  #define PARTITION_LINUX_LVM_GUID \
      EFI_GUID( 0xe6d6d379, 0xf507, 0x44c2, \
                0xa2, 0x3c, 0x23, 0x8f, 0x2a, 0x3d, 0xf9, 0x28)
diff --git a/target/linux/generic/hack-6.1/420-mtd-support-OpenWrt-s-MTD_ROOTFS_ROOT_DEV.patch b/target/linux/generic/hack-6.1/420-mtd-support-OpenWrt-s-MTD_ROOTFS_ROOT_DEV.patch
index 947b2c262f..8e8e5cea8d 100644
--- a/target/linux/generic/hack-6.1/420-mtd-support-OpenWrt-s-MTD_ROOTFS_ROOT_DEV.patch
+++ b/target/linux/generic/hack-6.1/420-mtd-support-OpenWrt-s-MTD_ROOTFS_ROOT_DEV.patch
@@ -12,7 +12,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
 
 --- a/drivers/mtd/mtdcore.c
 +++ b/drivers/mtd/mtdcore.c
-@@ -761,7 +761,8 @@ int add_mtd_device(struct mtd_info *mtd)
+@@ -750,7 +750,8 @@ int add_mtd_device(struct mtd_info *mtd)
  
  	mutex_unlock(&mtd_table_mutex);
  
diff --git a/target/linux/generic/hack-6.1/430-mtk-bmt-support.patch b/target/linux/generic/hack-6.1/430-mtk-bmt-support.patch
index 1476f4fd56..1e69ee6446 100644
--- a/target/linux/generic/hack-6.1/430-mtk-bmt-support.patch
+++ b/target/linux/generic/hack-6.1/430-mtk-bmt-support.patch
@@ -23,7 +23,7 @@ Subject: [PATCH] mtd/nand: add MediaTek NAND bad block managment table
  	depends on HAS_IOMEM
 --- a/drivers/mtd/nand/Makefile
 +++ b/drivers/mtd/nand/Makefile
-@@ -2,6 +2,7 @@
+@@ -3,6 +3,7 @@
  nandcore-objs := core.o bbt.o
  obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o
  obj-$(CONFIG_MTD_NAND_ECC_MEDIATEK) += ecc-mtk.o
diff --git a/target/linux/generic/hack-6.1/600-bridge_offload.patch b/target/linux/generic/hack-6.1/600-bridge_offload.patch
index 6462044bbe..aa78c96e7f 100644
--- a/target/linux/generic/hack-6.1/600-bridge_offload.patch
+++ b/target/linux/generic/hack-6.1/600-bridge_offload.patch
@@ -25,7 +25,7 @@ Subject: [PATCH] net/bridge: add bridge offload
 
 --- a/include/linux/if_bridge.h
 +++ b/include/linux/if_bridge.h
-@@ -59,6 +59,7 @@ struct br_ip_list {
+@@ -60,6 +60,7 @@ struct br_ip_list {
  #define BR_TX_FWD_OFFLOAD	BIT(20)
  #define BR_PORT_LOCKED		BIT(21)
  #define BR_BPDU_FILTER		BIT(22)
@@ -54,7 +54,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  /*
   * Handle changes in state of network devices enslaved to a bridge.
-@@ -381,6 +382,10 @@ static int __init br_init(void)
+@@ -389,6 +390,10 @@ static int __init br_init(void)
  	if (err)
  		goto err_out;
  
@@ -65,7 +65,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  	err = register_pernet_subsys(&br_net_ops);
  	if (err)
  		goto err_out1;
-@@ -430,6 +435,8 @@ err_out3:
+@@ -438,6 +443,8 @@ err_out3:
  err_out2:
  	unregister_pernet_subsys(&br_net_ops);
  err_out1:
@@ -74,7 +74,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  	br_fdb_fini();
  err_out:
  	stp_proto_unregister(&br_stp_proto);
-@@ -452,6 +459,7 @@ static void __exit br_deinit(void)
+@@ -460,6 +467,7 @@ static void __exit br_deinit(void)
  #if IS_ENABLED(CONFIG_ATM_LANE)
  	br_fdb_test_addr_hook = NULL;
  #endif
@@ -84,7 +84,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
 --- a/net/bridge/br_device.c
 +++ b/net/bridge/br_device.c
-@@ -524,6 +524,8 @@ void br_dev_setup(struct net_device *dev
+@@ -525,6 +525,8 @@ void br_dev_setup(struct net_device *dev
  	br->bridge_hello_time = br->hello_time = 2 * HZ;
  	br->bridge_forward_delay = br->forward_delay = 15 * HZ;
  	br->bridge_ageing_time = br->ageing_time = BR_DEFAULT_AGEING_TIME;
@@ -103,7 +103,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  static const struct rhashtable_params br_fdb_rht_params = {
  	.head_offset = offsetof(struct net_bridge_fdb_entry, rhnode),
-@@ -185,6 +185,8 @@ static void fdb_notify(struct net_bridge
+@@ -185,6 +186,8 @@ static void fdb_notify(struct net_bridge
  	struct sk_buff *skb;
  	int err = -ENOBUFS;
  
@@ -112,13 +112,13 @@ Subject: [PATCH] net/bridge: add bridge offload
  	if (swdev_notify)
  		br_switchdev_fdb_notify(br, fdb, type);
  
-@@ -518,6 +519,8 @@ static struct net_bridge_fdb_entry *fdb_
+@@ -393,6 +396,8 @@ static struct net_bridge_fdb_entry *fdb_
  	fdb->key.vlan_id = vid;
  	fdb->flags = flags;
  	fdb->updated = fdb->used = jiffies;
 +	INIT_HLIST_HEAD(&fdb->offload_in);
 +	INIT_HLIST_HEAD(&fdb->offload_out);
-	err = rhashtable_lookup_insert_fast(&br->fdb_hash_tbl, &fdb->rhnode,
+ 	err = rhashtable_lookup_insert_fast(&br->fdb_hash_tbl, &fdb->rhnode,
  					    br_fdb_rht_params);
  	if (err) {
 --- a/net/bridge/br_forward.c
@@ -150,7 +150,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  /*
   * Determine initial path cost based on speed.
-@@ -428,7 +429,7 @@ static struct net_bridge_port *new_nbp(s
+@@ -437,7 +438,7 @@ static struct net_bridge_port *new_nbp(s
  	p->path_cost = port_cost(dev);
  	p->priority = 0x8000 >> BR_PORT_BITS;
  	p->port_no = index;
@@ -159,7 +159,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  	br_init_port(p);
  	br_set_state(p, BR_STATE_DISABLED);
  	br_stp_port_timer_init(p);
-@@ -771,6 +772,9 @@ void br_port_flags_change(struct net_bri
+@@ -761,6 +762,9 @@ void br_port_flags_change(struct net_bri
  
  	if (mask & BR_NEIGH_SUPPRESS)
  		br_recalculate_neigh_suppress_enabled(br);
@@ -179,7 +179,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  static int
  br_netif_receive_skb(struct net *net, struct sock *sk, struct sk_buff *skb)
-@@ -171,6 +172,7 @@ int br_handle_frame_finish(struct net *n
+@@ -189,6 +190,7 @@ int br_handle_frame_finish(struct net *n
  			dst->used = now;
  		br_forward(dst->dst, skb, local_rcv, false);
  	} else {
@@ -187,7 +187,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  		if (!mcast_hit)
  			br_flood(br, skb, pkt_type, local_rcv, false);
  		else
-@@ -304,6 +306,9 @@ static rx_handler_result_t br_handle_fra
+@@ -322,6 +324,9 @@ static rx_handler_result_t br_handle_fra
  	memset(skb->cb, 0, sizeof(struct br_input_skb_cb));
  
  	p = br_port_get_rcu(skb->dev);
@@ -640,7 +640,7 @@ Subject: [PATCH] net/bridge: add bridge offload
 +}
 --- a/net/bridge/br_private.h
 +++ b/net/bridge/br_private.h
-@@ -268,7 +268,13 @@ struct net_bridge_fdb_entry {
+@@ -271,7 +271,13 @@ struct net_bridge_fdb_entry {
  	unsigned long			updated ____cacheline_aligned_in_smp;
  	unsigned long			used;
  
@@ -654,8 +654,8 @@ Subject: [PATCH] net/bridge: add bridge offload
 +	};
  };
  
- #define MDB_PG_FLAGS_PERMANENT	BIT(0)
-@@ -343,6 +349,12 @@ struct net_bridge_mdb_entry {
+ struct net_bridge_fdb_flush_desc {
+@@ -353,6 +359,12 @@ struct net_bridge_mdb_entry {
  	struct rcu_head			rcu;
  };
  
@@ -668,7 +668,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  struct net_bridge_port {
  	struct net_bridge		*br;
  	struct net_device		*dev;
-@@ -403,6 +415,7 @@ struct net_bridge_port {
+@@ -414,6 +426,7 @@ struct net_bridge_port {
  	u16				backup_redirected_cnt;
  
  	struct bridge_stp_xstats	stp_xstats;
@@ -676,7 +676,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  };
  
  #define kobj_to_brport(obj)	container_of(obj, struct net_bridge_port, kobj)
-@@ -519,6 +532,9 @@ struct net_bridge {
+@@ -531,6 +544,9 @@ struct net_bridge {
  	struct kobject			*ifobj;
  	u32				auto_cnt;
  
@@ -686,7 +686,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  #ifdef CONFIG_NET_SWITCHDEV
  	/* Counter used to make sure that hardware domains get unique
  	 * identifiers in case a bridge spans multiple switchdev instances.
-@@ -553,6 +569,10 @@ struct br_input_skb_cb {
+@@ -565,6 +581,10 @@ struct br_input_skb_cb {
  #ifdef CONFIG_NETFILTER_FAMILY_BRIDGE
  	u8 br_netfilter_broute:1;
  #endif
@@ -733,7 +733,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  /* since time values in bpdu are in jiffies and then scaled (1/256)
   * before sending, make sure that is at least one STP tick.
-@@ -52,6 +53,8 @@ void br_set_state(struct net_bridge_port
+@@ -58,6 +59,8 @@ void br_set_state(struct net_bridge_port
  				(unsigned int) p->port_no, p->dev->name,
  				br_port_state_names[p->state]);
  
@@ -752,7 +752,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  
  /* IMPORTANT: new bridge options must be added with netlink support only
   *            please do not add new sysfs entries
-@@ -930,6 +931,38 @@ static ssize_t vlan_stats_per_port_store
+@@ -933,6 +934,38 @@ static ssize_t vlan_stats_per_port_store
  static DEVICE_ATTR_RW(vlan_stats_per_port);
  #endif
  
@@ -791,7 +791,7 @@ Subject: [PATCH] net/bridge: add bridge offload
  static struct attribute *bridge_attrs[] = {
  	&dev_attr_forward_delay.attr,
  	&dev_attr_hello_time.attr,
-@@ -984,6 +1017,8 @@ static struct attribute *bridge_attrs[]
+@@ -987,6 +1020,8 @@ static struct attribute *bridge_attrs[]
  	&dev_attr_vlan_stats_enabled.attr,
  	&dev_attr_vlan_stats_per_port.attr,
  #endif
diff --git a/target/linux/generic/hack-6.1/645-netfilter-connmark-introduce-set-dscpmark.patch b/target/linux/generic/hack-6.1/645-netfilter-connmark-introduce-set-dscpmark.patch
index c368c4ae3b..444f8edfea 100644
--- a/target/linux/generic/hack-6.1/645-netfilter-connmark-introduce-set-dscpmark.patch
+++ b/target/linux/generic/hack-6.1/645-netfilter-connmark-introduce-set-dscpmark.patch
@@ -83,7 +83,7 @@ Signed-off-by: Kevin Darbyshire-Bryant <ldir at darbyshire-bryant.me.uk>
 
 --- a/include/uapi/linux/netfilter/xt_connmark.h
 +++ b/include/uapi/linux/netfilter/xt_connmark.h
-@@ -20,6 +20,11 @@ enum {
+@@ -15,6 +15,11 @@ enum {
  };
  
  enum {
@@ -95,7 +95,7 @@ Signed-off-by: Kevin Darbyshire-Bryant <ldir at darbyshire-bryant.me.uk>
  	D_SHIFT_LEFT = 0,
  	D_SHIFT_RIGHT,
  };
-@@ -34,6 +39,11 @@ struct xt_connmark_tginfo2 {
+@@ -29,6 +34,11 @@ struct xt_connmark_tginfo2 {
  	__u8 shift_dir, shift_bits, mode;
  };
  
diff --git a/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch b/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch
index 476c5948ab..386291bfe8 100644
--- a/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch
+++ b/target/linux/generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch
@@ -8,7 +8,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/net/netfilter/Kconfig
 +++ b/net/netfilter/Kconfig
-@@ -1011,6 +1010,15 @@ config NETFILTER_XT_TARGET_NOTRACK
+@@ -1023,6 +1023,15 @@ config NETFILTER_XT_TARGET_NOTRACK
  	depends on NETFILTER_ADVANCED
  	select NETFILTER_XT_TARGET_CT
  
@@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	depends on NETFILTER_ADVANCED
 --- a/net/netfilter/Makefile
 +++ b/net/netfilter/Makefile
-@@ -143,6 +143,7 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_CLASSIF
+@@ -154,6 +154,7 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_CLASSIF
  obj-$(CONFIG_NETFILTER_XT_TARGET_CONNSECMARK) += xt_CONNSECMARK.o
  obj-$(CONFIG_NETFILTER_XT_TARGET_CT) += xt_CT.o
  obj-$(CONFIG_NETFILTER_XT_TARGET_DSCP) += xt_DSCP.o
@@ -745,7 +745,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <net/netfilter/nf_flow_table.h>
  #include <net/netfilter/nf_conntrack.h>
  #include <net/netfilter/nf_conntrack_core.h>
-@@ -380,8 +379,7 @@ flow_offload_lookup(struct nf_flowtable
+@@ -381,8 +380,7 @@ flow_offload_lookup(struct nf_flowtable
  }
  EXPORT_SYMBOL_GPL(flow_offload_lookup);
  
@@ -755,13 +755,13 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		      void (*iter)(struct nf_flowtable *flowtable,
  				   struct flow_offload *flow, void *data),
  		      void *data)
-@@ -435,6 +433,7 @@ static void nf_flow_offload_gc_step(stru
+@@ -436,6 +434,7 @@ static void nf_flow_offload_gc_step(stru
  		nf_flow_offload_stats(flow_table, flow);
  	}
  }
 +EXPORT_SYMBOL_GPL(nf_flow_table_iterate);
  
- static void nf_flow_offload_work_gc(struct work_struct *work)
+ void nf_flow_table_gc_run(struct nf_flowtable *flow_table)
  {
 --- /dev/null
 +++ b/include/uapi/linux/netfilter/xt_FLOWOFFLOAD.h
@@ -785,7 +785,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 +#endif /* _XT_FLOWOFFLOAD_H */
 --- a/include/net/netfilter/nf_flow_table.h
 +++ b/include/net/netfilter/nf_flow_table.h
-@@ -275,6 +275,11 @@ void nf_flow_table_free(struct nf_flowta
+@@ -280,6 +280,11 @@ void nf_flow_table_free(struct nf_flowta
  
  void flow_offload_teardown(struct flow_offload *flow);
  
diff --git a/target/linux/generic/hack-6.1/651-wireless_mesh_header.patch b/target/linux/generic/hack-6.1/651-wireless_mesh_header.patch
index 12a031ec84..fd7d5346ad 100644
--- a/target/linux/generic/hack-6.1/651-wireless_mesh_header.patch
+++ b/target/linux/generic/hack-6.1/651-wireless_mesh_header.patch
@@ -11,7 +11,7 @@ Signed-off-by: Imre Kaloz <kaloz at openwrt.org>
 
 --- a/include/linux/netdevice.h
 +++ b/include/linux/netdevice.h
-@@ -145,8 +145,8 @@ static inline bool dev_xmit_complete(int
+@@ -149,8 +149,8 @@ static inline bool dev_xmit_complete(int
  
  #if defined(CONFIG_HYPERV_NET)
  # define LL_MAX_HEADER 128
diff --git a/target/linux/generic/hack-6.1/660-fq_codel_defaults.patch b/target/linux/generic/hack-6.1/660-fq_codel_defaults.patch
index a57a045f4a..b923a2d206 100644
--- a/target/linux/generic/hack-6.1/660-fq_codel_defaults.patch
+++ b/target/linux/generic/hack-6.1/660-fq_codel_defaults.patch
@@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/net/sched/sch_fq_codel.c
 +++ b/net/sched/sch_fq_codel.c
-@@ -467,7 +467,11 @@ static int fq_codel_init(struct Qdisc *s
+@@ -471,7 +471,11 @@ static int fq_codel_init(struct Qdisc *s
  
  	sch->limit = 10*1024;
  	q->flows_cnt = 1024;
diff --git a/target/linux/generic/hack-6.1/661-kernel-ct-size-the-hashtable-more-adequately.patch b/target/linux/generic/hack-6.1/661-kernel-ct-size-the-hashtable-more-adequately.patch
index 683aa8a8df..b9dda6cada 100644
--- a/target/linux/generic/hack-6.1/661-kernel-ct-size-the-hashtable-more-adequately.patch
+++ b/target/linux/generic/hack-6.1/661-kernel-ct-size-the-hashtable-more-adequately.patch
@@ -14,7 +14,7 @@ Signed-off-by: Rui Salvaterra <rsalvaterra at gmail.com>
 
 --- a/net/netfilter/nf_conntrack_core.c
 +++ b/net/netfilter/nf_conntrack_core.c
-@@ -2735,7 +2735,7 @@ int nf_conntrack_init_start(void)
+@@ -2702,7 +2702,7 @@ int nf_conntrack_init_start(void)
  
  	if (!nf_conntrack_htable_size) {
  		nf_conntrack_htable_size
diff --git a/target/linux/generic/hack-6.1/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch b/target/linux/generic/hack-6.1/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
index 8f2e6e0e0e..25a3f83b24 100644
--- a/target/linux/generic/hack-6.1/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
+++ b/target/linux/generic/hack-6.1/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
@@ -9,7 +9,7 @@ Subject: [PATCH] net/dsa/mv88e6xxx: disable ATU violation
 
 --- a/drivers/net/dsa/mv88e6xxx/chip.c
 +++ b/drivers/net/dsa/mv88e6xxx/chip.c
-@@ -2981,6 +2981,9 @@ static int mv88e6xxx_setup_port(struct m
+@@ -3465,6 +3465,9 @@ static int mv88e6xxx_setup_port(struct m
  	else
  		reg = 1 << port;
  
diff --git a/target/linux/generic/hack-6.1/720-net-phy-add-aqr-phys.patch b/target/linux/generic/hack-6.1/720-net-phy-add-aqr-phys.patch
index de6fdb3cea..fd2687d8ba 100644
--- a/target/linux/generic/hack-6.1/720-net-phy-add-aqr-phys.patch
+++ b/target/linux/generic/hack-6.1/720-net-phy-add-aqr-phys.patch
@@ -9,7 +9,7 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
 
 --- a/drivers/net/phy/aquantia_main.c
 +++ b/drivers/net/phy/aquantia_main.c
-@@ -20,6 +20,7 @@
+@@ -23,6 +23,7 @@
  #define PHY_ID_AQCS109	0x03a1b5c2
  #define PHY_ID_AQR405	0x03a1b4b0
  #define PHY_ID_AQR113C	0x31c31c12
@@ -17,7 +17,7 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
  
  #define MDIO_PHYXS_VEND_IF_STATUS		0xe812
  #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK	GENMASK(7, 3)
-@@ -372,6 +374,49 @@ static int aqr107_read_rate(struct phy_d
+@@ -415,6 +416,49 @@ static int aqr107_read_rate(struct phy_d
  	return 0;
  }
  
@@ -67,7 +67,7 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
  static int aqr107_read_status(struct phy_device *phydev)
  {
  	int val, ret;
-@@ -502,7 +547,7 @@ static void aqr107_chip_info(struct phy_
+@@ -554,7 +598,7 @@ static void aqr107_chip_info(struct phy_
  	build_id = FIELD_GET(VEND1_GLOBAL_RSVD_STAT1_FW_BUILD_ID, val);
  	prov_id = FIELD_GET(VEND1_GLOBAL_RSVD_STAT1_PROV_ID, val);
  
@@ -76,7 +76,7 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
  		   fw_major, fw_minor, build_id, prov_id);
  }
  
-@@ -706,7 +706,7 @@ static struct phy_driver aqr_driver[] =
+@@ -809,7 +853,7 @@ static struct phy_driver aqr_driver[] =
  	.config_aneg    = aqr_config_aneg,
  	.config_intr    = aqr_config_intr,
  	.handle_interrupt       = aqr_handle_interrupt,
@@ -85,9 +85,9 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
  	.get_tunable    = aqr107_get_tunable,
  	.set_tunable    = aqr107_set_tunable,
  	.suspend        = aqr107_suspend,
-@@ -708,6 +762,24 @@ static struct phy_driver aqr_driver[] =
- 	.handle_interrupt = aqr_handle_interrupt,
- 	.read_status	= aqr_read_status,
+@@ -819,6 +863,24 @@ static struct phy_driver aqr_driver[] =
+ 	.get_stats      = aqr107_get_stats,
+ 	.link_change_notify = aqr107_link_change_notify,
  },
 +{
 +	PHY_ID_MATCH_MODEL(PHY_ID_AQR813),
@@ -110,7 +110,7 @@ Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
  };
  
  module_phy_driver(aqr_driver);
-@@ -709,6 +790,7 @@ static struct mdio_device_id __maybe_unu
+@@ -832,6 +894,7 @@ static struct mdio_device_id __maybe_unu
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQCS109) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR405) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) },
diff --git a/target/linux/generic/hack-6.1/721-net-add-packet-mangeling.patch b/target/linux/generic/hack-6.1/721-net-add-packet-mangeling.patch
index adb437548e..14a9818c3a 100644
--- a/target/linux/generic/hack-6.1/721-net-add-packet-mangeling.patch
+++ b/target/linux/generic/hack-6.1/721-net-add-packet-mangeling.patch
@@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/include/linux/netdevice.h
 +++ b/include/linux/netdevice.h
-@@ -1655,6 +1655,7 @@ enum netdev_priv_flags {
+@@ -1704,6 +1704,7 @@ enum netdev_priv_flags {
  	IFF_LIVE_RENAME_OK		= 1<<30,
  	IFF_TX_SKB_NO_LINEAR		= BIT_ULL(31),
  	IFF_CHANGE_PROTO_DOWN		= BIT_ULL(32),
@@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  };
  
  #define IFF_802_1Q_VLAN			IFF_802_1Q_VLAN
-@@ -1687,6 +1691,7 @@ enum netdev_priv_flags {
+@@ -1738,6 +1739,7 @@ enum netdev_priv_flags {
  #define IFF_L3MDEV_RX_HANDLER		IFF_L3MDEV_RX_HANDLER
  #define IFF_LIVE_RENAME_OK		IFF_LIVE_RENAME_OK
  #define IFF_TX_SKB_NO_LINEAR		IFF_TX_SKB_NO_LINEAR
@@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  /* Specifies the type of the struct net_device::ml_priv pointer */
  enum netdev_ml_priv_type {
-@@ -2048,6 +2054,11 @@ struct net_device {
+@@ -2106,6 +2108,11 @@ struct net_device {
  	const struct tlsdev_ops *tlsdev_ops;
  #endif
  
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	const struct header_ops *header_ops;
  
  	unsigned char		operstate;
-@@ -2122,6 +2133,10 @@ struct net_device {
+@@ -2181,6 +2188,10 @@ struct net_device {
  	struct mctp_dev __rcu	*mctp_ptr;
  #endif
  
@@ -60,7 +60,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
   */
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2816,6 +2816,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -3022,6 +3022,10 @@ static inline int pskb_trim(struct sk_bu
  	return (len < skb->len) ? __pskb_trim(skb, len) : 0;
  }
  
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  /**
   *	pskb_trim_unique - remove end from a paged unique (not cloned) buffer
   *	@skb: buffer to alter
-@@ -2966,16 +2970,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -3171,16 +3175,6 @@ static inline struct sk_buff *dev_alloc_
  }
  
  
@@ -105,7 +105,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	help
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -3590,6 +3590,11 @@ static int xmit_one(struct sk_buff *skb,
+@@ -3588,6 +3588,11 @@ static int xmit_one(struct sk_buff *skb,
  	if (dev_nit_active(dev))
  		dev_queue_xmit_nit(skb, dev);
  
@@ -127,7 +127,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  #include <net/protocol.h>
  #include <net/dst.h>
-@@ -602,6 +603,22 @@ skb_fail:
+@@ -707,6 +708,22 @@ skb_fail:
  }
  EXPORT_SYMBOL(__napi_alloc_skb);
  
@@ -152,7 +152,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  {
 --- a/net/ethernet/eth.c
 +++ b/net/ethernet/eth.c
-@@ -170,6 +170,12 @@ __be16 eth_type_trans(struct sk_buff *sk
+@@ -171,6 +171,12 @@ __be16 eth_type_trans(struct sk_buff *sk
  	const struct ethhdr *eth;
  
  	skb->dev = dev;
diff --git a/target/linux/generic/hack-6.1/722-net-phy-aquantia-enable-AQR112-and-AQR412.patch b/target/linux/generic/hack-6.1/722-net-phy-aquantia-enable-AQR112-and-AQR412.patch
index d4024f1a43..77b190464c 100644
--- a/target/linux/generic/hack-6.1/722-net-phy-aquantia-enable-AQR112-and-AQR412.patch
+++ b/target/linux/generic/hack-6.1/722-net-phy-aquantia-enable-AQR112-and-AQR412.patch
@@ -15,7 +15,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
 
 --- a/drivers/net/phy/aquantia_main.c
 +++ b/drivers/net/phy/aquantia_main.c
-@@ -20,6 +20,8 @@
+@@ -24,6 +24,8 @@
  #define PHY_ID_AQR405	0x03a1b4b0
  #define PHY_ID_AQR113C	0x31c31c12
  #define PHY_ID_AQR813	0x31c31cb2
@@ -24,9 +24,9 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
  
  #define MDIO_PHYXS_VEND_IF_STATUS		0xe812
  #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK	GENMASK(7, 3)
-@@ -126,6 +128,29 @@
- #define VEND1_GLOBAL_INT_VEND_MASK_GLOBAL2	BIT(1)
- #define VEND1_GLOBAL_INT_VEND_MASK_GLOBAL3	BIT(0)
+@@ -151,6 +153,29 @@
+ #define AQR107_OP_IN_PROG_SLEEP		1000
+ #define AQR107_OP_IN_PROG_TIMEOUT	100000
  
 +/* registers in MDIO_MMD_VEND1 region */
 +#define AQUANTIA_VND1_GLOBAL_SC			0x000
@@ -54,7 +54,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
  struct aqr107_hw_stat {
  	const char *name;
  	int reg;
-@@ -257,6 +282,51 @@ static int aqr_config_aneg(struct phy_de
+@@ -282,6 +307,51 @@ static int aqr_config_aneg(struct phy_de
  	return genphy_c45_check_and_restart_aneg(phydev, changed);
  }
  
@@ -106,7 +106,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
  static int aqr_config_intr(struct phy_device *phydev)
  {
  	bool en = phydev->interrupts == PHY_INTERRUPT_ENABLED;
-@@ -780,6 +850,30 @@ static struct phy_driver aqr_driver[] =
+@@ -881,6 +951,30 @@ static struct phy_driver aqr_driver[] =
  	.get_stats	= aqr107_get_stats,
  	.link_change_notify = aqr107_link_change_notify,
  },
@@ -137,7 +137,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
  };
  
  module_phy_driver(aqr_driver);
-@@ -790,5 +884,7 @@ static struct mdio_device_id __maybe_unu
+@@ -895,6 +989,8 @@ static struct mdio_device_id __maybe_unu
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR405) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR813) },
@@ -145,3 +145,4 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
 +	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
  	{ }
  };
+ 
diff --git a/target/linux/generic/hack-6.1/723-net-phy-aquantia-fix-system-side-protocol-mi.patch b/target/linux/generic/hack-6.1/723-net-phy-aquantia-fix-system-side-protocol-mi.patch
index d99b4951b8..8e204cb146 100644
--- a/target/linux/generic/hack-6.1/723-net-phy-aquantia-fix-system-side-protocol-mi.patch
+++ b/target/linux/generic/hack-6.1/723-net-phy-aquantia-fix-system-side-protocol-mi.patch
@@ -14,7 +14,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean at nxp.com>
 
 --- a/drivers/net/phy/aquantia_main.c
 +++ b/drivers/net/phy/aquantia_main.c
-@@ -315,10 +315,16 @@ static int aqr_config_aneg_set_prot(stru
+@@ -340,10 +340,16 @@ static int aqr_config_aneg_set_prot(stru
  	phy_write_mmd(phydev, MDIO_MMD_VEND1, AQUANTIA_VND1_GSTART_RATE,
  		      aquantia_syscfg[if_type].start_rate);
  
diff --git a/target/linux/generic/hack-6.1/724-net-phy-aquantia-Add-AQR113-driver-support.patch b/target/linux/generic/hack-6.1/724-net-phy-aquantia-Add-AQR113-driver-support.patch
index dd32690048..0a1e970623 100644
--- a/target/linux/generic/hack-6.1/724-net-phy-aquantia-Add-AQR113-driver-support.patch
+++ b/target/linux/generic/hack-6.1/724-net-phy-aquantia-Add-AQR113-driver-support.patch
@@ -10,7 +10,7 @@ Add a new entry for AQR113 PHY_ID
 
 --- a/drivers/net/phy/aquantia_main.c
 +++ b/drivers/net/phy/aquantia_main.c
-@@ -21,6 +21,7 @@
+@@ -26,6 +26,7 @@
  #define PHY_ID_AQR813	0x31c31cb2
  #define PHY_ID_AQR112	0x03a1b662
  #define PHY_ID_AQR412	0x03a1b712
@@ -18,8 +18,8 @@ Add a new entry for AQR113 PHY_ID
  
  #define MDIO_PHYXS_VEND_IF_STATUS		0xe812
  #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK	GENMASK(7, 3)
-@@ -869,6 +870,14 @@ static struct phy_driver aqr_driver[] =
-	.get_strings	= aqr107_get_strings,
+@@ -981,6 +982,14 @@ static struct phy_driver aqr_driver[] =
+ 	.get_strings	= aqr107_get_strings,
  	.get_stats	= aqr107_get_stats,
  },
 +{
@@ -33,10 +33,11 @@ Add a new entry for AQR113 PHY_ID
  };
  
  module_phy_driver(aqr_driver);
-@@ -790,5 +884,6 @@ static struct mdio_device_id __maybe_unu
+@@ -997,6 +1006,7 @@ static struct mdio_device_id __maybe_unu
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR813) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR112) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
 +	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113) },
  	{ }
  };
+ 
diff --git a/target/linux/generic/hack-6.1/725-net-phy-aquantia-add-PHY_IDs-for-AQR112-variants.patch b/target/linux/generic/hack-6.1/725-net-phy-aquantia-add-PHY_IDs-for-AQR112-variants.patch
index 57edfc118e..654fea5661 100644
--- a/target/linux/generic/hack-6.1/725-net-phy-aquantia-add-PHY_IDs-for-AQR112-variants.patch
+++ b/target/linux/generic/hack-6.1/725-net-phy-aquantia-add-PHY_IDs-for-AQR112-variants.patch
@@ -12,7 +12,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
 
 --- a/drivers/net/phy/aquantia_main.c
 +++ b/drivers/net/phy/aquantia_main.c
-@@ -21,6 +21,8 @@
+@@ -27,6 +27,8 @@
  #define PHY_ID_AQR112	0x03a1b662
  #define PHY_ID_AQR412	0x03a1b712
  #define PHY_ID_AQR113	0x31c31c40
@@ -21,7 +21,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  
  #define MDIO_PHYXS_VEND_IF_STATUS		0xe812
  #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK	GENMASK(7, 3)
-@@ -870,6 +872,30 @@ static struct phy_driver aqr_driver[] =
+@@ -990,6 +992,30 @@ static struct phy_driver aqr_driver[] =
  	.handle_interrupt = aqr_handle_interrupt,
  	.read_status	= aqr107_read_status,
  },
@@ -52,7 +52,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  };
  
  module_phy_driver(aqr_driver);
-@@ -900,5 +926,7 @@ static struct mdio_device_id __maybe_unu
+@@ -1007,6 +1033,8 @@ static struct mdio_device_id __maybe_unu
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR112) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
  	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113) },
@@ -60,3 +60,4 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
 +	{ PHY_ID_MATCH_MODEL(PHY_ID_AQR112R) },
  	{ }
  };
+ 
diff --git a/target/linux/generic/hack-6.1/760-net-usb-r8152-add-LED-configuration-from-OF.patch b/target/linux/generic/hack-6.1/760-net-usb-r8152-add-LED-configuration-from-OF.patch
index f61c078521..ba03a00eb2 100644
--- a/target/linux/generic/hack-6.1/760-net-usb-r8152-add-LED-configuration-from-OF.patch
+++ b/target/linux/generic/hack-6.1/760-net-usb-r8152-add-LED-configuration-from-OF.patch
@@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  #include <linux/crc32.h>
  #include <linux/if_vlan.h>
  #include <linux/uaccess.h>
-@@ -6886,6 +6887,22 @@ static void rtl_tally_reset(struct r8152
+@@ -6893,6 +6894,22 @@ static void rtl_tally_reset(struct r8152
  	ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
  }
  
@@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  static void r8152b_init(struct r8152 *tp)
  {
  	u32 ocp_data;
-@@ -6927,6 +6944,8 @@ static void r8152b_init(struct r8152 *tp
+@@ -6934,6 +6951,8 @@ static void r8152b_init(struct r8152 *tp
  	ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
  	ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
  	ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
@@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  }
  
  static void r8153_init(struct r8152 *tp)
-@@ -7067,6 +7086,8 @@ static void r8153_init(struct r8152 *tp)
+@@ -7074,6 +7093,8 @@ static void r8153_init(struct r8152 *tp)
  		tp->coalesce = COALESCE_SLOW;
  		break;
  	}
@@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  }
  
  static void r8153b_init(struct r8152 *tp)
-@@ -7149,6 +7170,8 @@ static void r8153b_init(struct r8152 *tp
+@@ -7156,6 +7177,8 @@ static void r8153b_init(struct r8152 *tp
  	rtl_tally_reset(tp);
  
  	tp->coalesce = 15000;	/* 15 us */
diff --git a/target/linux/generic/hack-6.1/765-mxl-gpy-control-LED-reg-from-DT.patch b/target/linux/generic/hack-6.1/765-mxl-gpy-control-LED-reg-from-DT.patch
index 22fa7289fd..d7165cb30a 100644
--- a/target/linux/generic/hack-6.1/765-mxl-gpy-control-LED-reg-from-DT.patch
+++ b/target/linux/generic/hack-6.1/765-mxl-gpy-control-LED-reg-from-DT.patch
@@ -23,7 +23,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
 
 --- a/drivers/net/phy/mxl-gpy.c
 +++ b/drivers/net/phy/mxl-gpy.c
-@@ -8,6 +8,7 @@
+@@ -10,6 +10,7 @@
  #include <linux/bitfield.h>
  #include <linux/hwmon.h>
  #include <linux/mutex.h>
@@ -31,7 +31,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  #include <linux/phy.h>
  #include <linux/polynomial.h>
  #include <linux/netdevice.h>
-@@ -30,6 +31,7 @@
+@@ -33,6 +34,7 @@
  #define PHY_MIISTAT		0x18	/* MII state */
  #define PHY_IMASK		0x19	/* interrupt mask */
  #define PHY_ISTAT		0x1A	/* interrupt status */
@@ -39,7 +39,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  #define PHY_FWV			0x1E	/* firmware version */
  
  #define PHY_MIISTAT_SPD_MASK	GENMASK(2, 0)
-@@ -53,10 +55,15 @@
+@@ -56,10 +58,15 @@
  				 PHY_IMASK_ADSC | \
  				 PHY_IMASK_ANC)
  
@@ -55,9 +55,9 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  /* SGMII */
  #define VSPEC1_SGMII_CTRL	0x08
  #define VSPEC1_SGMII_CTRL_ANEN	BIT(12)		/* Aneg enable */
-@@ -80,6 +87,31 @@ static const struct {
- 	{9, 0x73},
- };
+@@ -241,6 +248,31 @@ out:
+ 	return ret;
+ }
  
 +static int gpy_led_write(struct phy_device *phydev)
 +{
@@ -87,7 +87,7 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
  static int gpy_config_init(struct phy_device *phydev)
  {
  	int ret;
-@@ -91,7 +123,10 @@ static int gpy_config_init(struct phy_de
+@@ -252,7 +284,10 @@ static int gpy_config_init(struct phy_de
  
  	/* Clear all pending interrupts */
  	ret = phy_read(phydev, PHY_ISTAT);
@@ -98,4 +98,4 @@ Signed-off-by: David Bauer <mail at david-bauer.net>
 +	return gpy_led_write(phydev);
  }
  
- static int gpy_probe(struct phy_device *phydev)
+ static bool gpy_has_broken_mdint(struct phy_device *phydev)
diff --git a/target/linux/generic/hack-6.1/773-bgmac-add-srab-switch.patch b/target/linux/generic/hack-6.1/773-bgmac-add-srab-switch.patch
index 7127aa136c..633cacd1e7 100644
--- a/target/linux/generic/hack-6.1/773-bgmac-add-srab-switch.patch
+++ b/target/linux/generic/hack-6.1/773-bgmac-add-srab-switch.patch
@@ -78,7 +78,7 @@ Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
  	netif_napi_del(&bgmac->napi);
 --- a/drivers/net/ethernet/broadcom/bgmac.h
 +++ b/drivers/net/ethernet/broadcom/bgmac.h
-@@ -390,6 +390,7 @@
+@@ -388,6 +388,7 @@
  #define BGMAC_FEAT_CC4_IF_SW_TYPE_RGMII	BIT(18)
  #define BGMAC_FEAT_CC7_IF_TYPE_RGMII	BIT(19)
  #define BGMAC_FEAT_IDM_MASK		BIT(20)
@@ -86,7 +86,7 @@ Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
  
  struct bgmac_slot_info {
  	union {
-@@ -497,6 +498,9 @@ struct bgmac {
+@@ -495,6 +496,9 @@ struct bgmac {
  	void (*cmn_maskset32)(struct bgmac *bgmac, u16 offset, u32 mask,
  			      u32 set);
  	int (*phy_connect)(struct bgmac *bgmac);
diff --git a/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch b/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch
index e3959658a3..23f8be5d26 100644
--- a/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch
+++ b/target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch
@@ -10,7 +10,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
 
 --- a/drivers/net/usb/qmi_wwan.c
 +++ b/drivers/net/usb/qmi_wwan.c
-@@ -1085,6 +1085,7 @@ static const struct usb_device_id produc
+@@ -1088,6 +1088,7 @@ static const struct usb_device_id produc
  	{QMI_MATCH_FF_FF_FF(0x2c7c, 0x0620)},	/* Quectel EM160R-GL */
  	{QMI_MATCH_FF_FF_FF(0x2c7c, 0x0800)},	/* Quectel RM500Q-GL */
  	{QMI_MATCH_FF_FF_FF(0x2c7c, 0x0801)},	/* Quectel RM520N */
@@ -29,8 +29,8 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
  
  #define QUECTEL_VENDOR_ID			0x2c7c
  /* These Quectel products use Quectel's vendor ID */
-@@ -1133,6 +1135,11 @@ static const struct usb_device_id option
- 	{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) },
+@@ -1169,6 +1171,11 @@ static const struct usb_device_id option
+ 	  .driver_info = ZLP },
  	{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
  	  .driver_info = RSVD(4) },
 +	/* Meiglink products using Qualcomm vendor ID */
diff --git a/target/linux/generic/hack-6.1/790-SFP-GE-T-ignore-TX_FAULT.patch b/target/linux/generic/hack-6.1/790-SFP-GE-T-ignore-TX_FAULT.patch
index 7131b61b35..6e14d04c5f 100644
--- a/target/linux/generic/hack-6.1/790-SFP-GE-T-ignore-TX_FAULT.patch
+++ b/target/linux/generic/hack-6.1/790-SFP-GE-T-ignore-TX_FAULT.patch
@@ -26,17 +26,17 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
 
 --- a/drivers/net/phy/sfp.c
 +++ b/drivers/net/phy/sfp.c
-@@ -393,6 +393,9 @@ static const struct sfp_quirk sfp_quirks
- 	// their EEPROM
+@@ -404,6 +404,9 @@ static const struct sfp_quirk sfp_quirks
  	SFP_QUIRK("HUAWEI", "MA5671A", sfp_quirk_2500basex,
  		  sfp_fixup_ignore_tx_fault),
-+
+ 
 +	// OEM SFP-GE-T is 1000Base-T module
 +	SFP_QUIRK_F("OEM", "SFP-GE-T", sfp_fixup_ignore_tx_fault),
- 
++
  	// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
  	// 2500MBd NRZ in their EEPROM
-@@ -2303,7 +2308,8 @@ static void sfp_sm_main(struct sfp *sfp,
+ 	SFP_QUIRK_M("Lantech", "8330-262D-E", sfp_quirk_2500basex),
+@@ -2334,7 +2337,8 @@ static void sfp_sm_main(struct sfp *sfp,
  			 * or t_start_up, so assume there is a fault.
  			 */
  			sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
@@ -45,8 +45,8 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
 +				     (sfp->sm_fault_retries == N_FAULT_INIT));
  		} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
  	init_done:
- 			sfp->sm_phy_retries = R_PHY_RETRY;
-@@ -2535,10 +2541,12 @@ static void sfp_check_state(struct sfp *
+ 			/* Create mdiobus and start trying for PHY */
+@@ -2563,10 +2567,12 @@ static void sfp_check_state(struct sfp *
  	mutex_lock(&sfp->st_mutex);
  	state = sfp_get_state(sfp);
  	changed = state ^ sfp->state;
diff --git a/target/linux/generic/hack-6.1/800-GPIO-add-named-gpio-exports.patch b/target/linux/generic/hack-6.1/800-GPIO-add-named-gpio-exports.patch
index 4c2a37e347..658d9c3806 100644
--- a/target/linux/generic/hack-6.1/800-GPIO-add-named-gpio-exports.patch
+++ b/target/linux/generic/hack-6.1/800-GPIO-add-named-gpio-exports.patch
@@ -15,7 +15,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  
  #include "gpiolib.h"
  #include "gpiolib-of.h"
-@@ -1057,3 +1059,72 @@ void of_gpio_dev_init(struct gpio_chip *
+@@ -1030,3 +1032,72 @@ void of_gpio_dev_init(struct gpio_chip *
  	else
  		gc->of_node = gdev->dev.of_node;
  }
@@ -105,7 +105,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  {
 --- a/include/linux/gpio/consumer.h
 +++ b/include/linux/gpio/consumer.h
-@@ -712,6 +712,7 @@ static inline void devm_acpi_dev_remove_
+@@ -715,6 +715,7 @@ static inline struct gpio_desc *acpi_get
  
  #if IS_ENABLED(CONFIG_GPIOLIB) && IS_ENABLED(CONFIG_GPIO_SYSFS)
  
@@ -113,7 +113,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  int gpiod_export(struct gpio_desc *desc, bool direction_may_change);
  int gpiod_export_link(struct device *dev, const char *name,
  		      struct gpio_desc *desc);
-@@ -719,6 +720,13 @@ void gpiod_unexport(struct gpio_desc *de
+@@ -722,6 +723,13 @@ void gpiod_unexport(struct gpio_desc *de
  
  #else  /* CONFIG_GPIOLIB && CONFIG_GPIO_SYSFS */
  
@@ -129,7 +129,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  {
 --- a/drivers/gpio/gpiolib-sysfs.c
 +++ b/drivers/gpio/gpiolib-sysfs.c
-@@ -561,7 +561,7 @@ static struct class gpio_class = {
+@@ -544,7 +544,7 @@ static struct class gpio_class = {
   *
   * Returns zero on success, else an error.
   */
@@ -138,7 +138,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  {
  	struct gpio_chip	*chip;
  	struct gpio_device	*gdev;
-@@ -623,6 +623,8 @@ int gpiod_export(struct gpio_desc *desc,
+@@ -606,6 +606,8 @@ int gpiod_export(struct gpio_desc *desc,
  	offset = gpio_chip_hwgpio(desc);
  	if (chip->names && chip->names[offset])
  		ioname = chip->names[offset];
@@ -147,7 +147,7 @@ Signed-off-by: John Crispin <blogic at openwrt.org>
  
  	dev = device_create_with_groups(&gpio_class, &gdev->dev,
  					MKDEV(0, 0), data, gpio_groups,
-@@ -644,6 +646,12 @@ err_unlock:
+@@ -627,6 +629,12 @@ err_unlock:
  	gpiod_dbg(desc, "%s: status %d\n", __func__, status);
  	return status;
  }
diff --git a/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch b/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch
index 247eb798b3..582a48cb18 100644
--- a/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch
+++ b/target/linux/generic/hack-6.1/901-debloat_sock_diag.patch
@@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	help
 --- a/net/core/Makefile
 +++ b/net/core/Makefile
-@@ -10,11 +10,12 @@ obj-$(CONFIG_SYSCTL) += sysctl_net_core.
+@@ -11,11 +11,12 @@ obj-$(CONFIG_SYSCTL) += sysctl_net_core.
  
  obj-y		     += dev.o dev_addr_lists.o dst.o netevent.o \
  			neighbour.o rtnetlink.o utils.o link_watch.o filter.o \
@@ -52,15 +52,15 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  #include <linux/uaccess.h>
  
-@@ -143,6 +144,7 @@
+@@ -145,6 +146,7 @@
  
  static DEFINE_MUTEX(proto_list_mutex);
  static LIST_HEAD(proto_list);
 +DEFINE_COOKIE(sock_cookie);
  
- static void sock_inuse_add(struct net *net, int val);
- 
-@@ -545,6 +547,18 @@ discard_and_relse:
+ static void sock_def_write_space_wfree(struct sock *sk);
+ static void sock_def_write_space(struct sock *sk);
+@@ -582,6 +584,18 @@ discard_and_relse:
  }
  EXPORT_SYMBOL(__sk_receive_skb);
  
@@ -79,7 +79,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  INDIRECT_CALLABLE_DECLARE(struct dst_entry *ip6_dst_check(struct dst_entry *,
  							  u32));
  INDIRECT_CALLABLE_DECLARE(struct dst_entry *ipv4_dst_check(struct dst_entry *,
-@@ -1983,9 +1997,11 @@ static void __sk_free(struct sock *sk)
+@@ -2174,9 +2188,11 @@ static void __sk_free(struct sock *sk)
  	if (likely(sk->sk_net_refcnt))
  		sock_inuse_add(sock_net(sk), -1);
  
@@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/net/core/sock_diag.c
 +++ b/net/core/sock_diag.c
-@@ -11,7 +11,6 @@
+@@ -12,7 +12,6 @@
  #include <linux/tcp.h>
  #include <linux/workqueue.h>
  #include <linux/nospec.h>
@@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <linux/inet_diag.h>
  #include <linux/sock_diag.h>
  
-@@ -20,20 +19,6 @@ static int (*inet_rcv_compat)(struct sk_
+@@ -21,20 +20,6 @@ static int (*inet_rcv_compat)(struct sk_
  static DEFINE_MUTEX(sock_diag_table_mutex);
  static struct workqueue_struct *broadcast_wq;
  
@@ -124,7 +124,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	u64 res;
 --- a/net/ipv4/Kconfig
 +++ b/net/ipv4/Kconfig
-@@ -424,6 +424,7 @@ config INET_TUNNEL
+@@ -423,6 +423,7 @@ config INET_TUNNEL
  
  config INET_DIAG
  	tristate "INET: socket monitoring interface"
diff --git a/target/linux/generic/hack-6.1/902-debloat_proc.patch b/target/linux/generic/hack-6.1/902-debloat_proc.patch
index d729b29015..bac3d4af82 100644
--- a/target/linux/generic/hack-6.1/902-debloat_proc.patch
+++ b/target/linux/generic/hack-6.1/902-debloat_proc.patch
@@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/fs/locks.c
 +++ b/fs/locks.c
-@@ -2953,6 +2953,8 @@ static const struct seq_operations locks
+@@ -2909,6 +2909,8 @@ static const struct seq_operations locks
  
  static int __init proc_locks_init(void)
  {
@@ -40,7 +40,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	return 0;
 --- a/fs/proc/Kconfig
 +++ b/fs/proc/Kconfig
-@@ -100,6 +100,11 @@ config PROC_CHILDREN
+@@ -101,6 +101,11 @@ config PROC_CHILDREN
  	  Say Y if you are running any user-space software which takes benefit from
  	  this interface. For example, rkt is such a piece of software.
  
@@ -66,7 +66,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  }
 --- a/fs/proc/proc_tty.c
 +++ b/fs/proc/proc_tty.c
-@@ -133,7 +133,10 @@ static const struct seq_operations tty_d
+@@ -131,7 +131,10 @@ static const struct seq_operations tty_d
  void proc_tty_register_driver(struct tty_driver *driver)
  {
  	struct proc_dir_entry *ent;
@@ -78,7 +78,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (!driver->driver_name || driver->proc_entry ||
  	    !driver->ops->proc_show)
  		return;
-@@ -150,6 +153,9 @@ void proc_tty_unregister_driver(struct t
+@@ -148,6 +151,9 @@ void proc_tty_unregister_driver(struct t
  {
  	struct proc_dir_entry *ent;
  
@@ -88,7 +88,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	ent = driver->proc_entry;
  	if (!ent)
  		return;
-@@ -164,6 +170,9 @@ void proc_tty_unregister_driver(struct t
+@@ -162,6 +168,9 @@ void proc_tty_unregister_driver(struct t
   */
  void __init proc_tty_init(void)
  {
@@ -135,7 +135,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	do {								\
 --- a/ipc/msg.c
 +++ b/ipc/msg.c
-@@ -1350,6 +1350,9 @@ void __init msg_init(void)
+@@ -1370,6 +1370,9 @@ void __init msg_init(void)
  {
  	msg_init_ns(&init_ipc_ns);
  
@@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (!pe)
 --- a/mm/vmalloc.c
 +++ b/mm/vmalloc.c
-@@ -3964,6 +3964,8 @@ static const struct seq_operations vmall
+@@ -4183,6 +4183,8 @@ static const struct seq_operations vmall
  
  static int __init proc_vmalloc_init(void)
  {
@@ -246,7 +246,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				&vmalloc_op,
 --- a/mm/vmstat.c
 +++ b/mm/vmstat.c
-@@ -2083,10 +2083,12 @@ void __init init_mm_internals(void)
+@@ -2109,10 +2109,12 @@ void __init init_mm_internals(void)
  	start_shepherd_timer();
  #endif
  #ifdef CONFIG_PROC_FS
@@ -286,7 +286,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		goto err;
 --- a/net/core/net-procfs.c
 +++ b/net/core/net-procfs.c
-@@ -317,10 +317,12 @@ static int __net_init dev_proc_net_init(
+@@ -319,10 +319,12 @@ static int __net_init dev_proc_net_init(
  	if (!proc_create_net("dev", 0444, net->proc_net, &dev_seq_ops,
  			sizeof(struct seq_net_private)))
  		goto out;
@@ -301,7 +301,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  			sizeof(struct seq_net_private)))
  		goto out_softnet;
  
-@@ -330,9 +332,11 @@ static int __net_init dev_proc_net_init(
+@@ -332,9 +334,11 @@ static int __net_init dev_proc_net_init(
  out:
  	return rc;
  out_ptype:
@@ -315,7 +315,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  out_dev:
  	remove_proc_entry("dev", net->proc_net);
  	goto out;
-@@ -342,8 +346,10 @@ static void __net_exit dev_proc_net_exit
+@@ -344,8 +348,10 @@ static void __net_exit dev_proc_net_exit
  {
  	wext_proc_exit(net);
  
@@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/net/core/sock.c
 +++ b/net/core/sock.c
-@@ -3855,6 +3855,8 @@ static __net_initdata struct pernet_oper
+@@ -4088,6 +4088,8 @@ static __net_initdata struct pernet_oper
  
  static int __init proto_init(void)
  {
@@ -341,7 +341,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/net/ipv4/fib_trie.c
 +++ b/net/ipv4/fib_trie.c
-@@ -3024,11 +3024,13 @@ static const struct seq_operations fib_r
+@@ -3031,11 +3031,13 @@ static const struct seq_operations fib_r
  
  int __net_init fib_proc_init(struct net *net)
  {
@@ -357,7 +357,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  			fib_triestat_seq_show, NULL))
  		goto out2;
  
-@@ -3039,17 +3041,21 @@ int __net_init fib_proc_init(struct net
+@@ -3046,17 +3048,21 @@ int __net_init fib_proc_init(struct net
  	return 0;
  
  out3:
@@ -396,7 +396,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  }
 --- a/net/ipv4/route.c
 +++ b/net/ipv4/route.c
-@@ -387,6 +387,9 @@ static struct pernet_operations ip_rt_pr
+@@ -380,6 +380,9 @@ static struct pernet_operations ip_rt_pr
  
  static int __init ip_rt_proc_init(void)
  {
diff --git a/target/linux/generic/hack-6.1/904-debloat_dma_buf.patch b/target/linux/generic/hack-6.1/904-debloat_dma_buf.patch
index 8eb705341d..48c001bfab 100644
--- a/target/linux/generic/hack-6.1/904-debloat_dma_buf.patch
+++ b/target/linux/generic/hack-6.1/904-debloat_dma_buf.patch
@@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/drivers/base/Kconfig
 +++ b/drivers/base/Kconfig
-@@ -187,7 +187,7 @@ config SOC_BUS
+@@ -198,7 +198,7 @@ config SOC_BUS
  source "drivers/base/regmap/Kconfig"
  
  config DMA_SHARED_BUFFER
@@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 +dma-buf-objs-$(CONFIG_DMABUF_HEAPS_CMA)		+= cma_heap.o
 --- a/drivers/dma-buf/Makefile
 +++ b/drivers/dma-buf/Makefile
-@@ -1,18 +1,22 @@
+@@ -1,12 +1,14 @@
  # SPDX-License-Identifier: GPL-2.0-only
 -obj-y := dma-buf.o dma-fence.o dma-fence-array.o dma-fence-chain.o \
 +obj-$(CONFIG_DMA_SHARED_BUFFER) := dma-shared-buffer.o
@@ -54,8 +54,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  dmabuf_selftests-y := \
  	selftest.o \
- 	st-dma-fence.o \
- 	st-dma-fence-chain.o \
+@@ -15,4 +17,6 @@ dmabuf_selftests-y := \
  	st-dma-fence-unwrap.o \
  	st-dma-resv.o
  
@@ -65,7 +64,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 +dma-shared-buffer-objs :=  $(dma-buf-objs-y)
 --- a/drivers/dma-buf/dma-buf.c
 +++ b/drivers/dma-buf/dma-buf.c
-@@ -1513,4 +1513,5 @@ static void __exit dma_buf_deinit(void)
+@@ -1583,4 +1583,5 @@ static void __exit dma_buf_deinit(void)
  	kern_unmount(dma_buf_mnt);
  	dma_buf_uninit_sysfs_statistics();
  }
@@ -74,7 +73,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 +MODULE_LICENSE("GPL");
 --- a/kernel/sched/core.c
 +++ b/kernel/sched/core.c
-@@ -4175,6 +4175,7 @@ int wake_up_state(struct task_struct *p,
+@@ -4363,6 +4363,7 @@ int wake_up_state(struct task_struct *p,
  {
  	return try_to_wake_up(p, state, 0);
  }
@@ -84,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
   * Perform scheduler related setup for a newly forked process p.
 --- a/fs/d_path.c
 +++ b/fs/d_path.c
-@@ -316,6 +316,7 @@ char *dynamic_dname(struct dentry *dentr
+@@ -313,6 +313,7 @@ char *dynamic_dname(char *buffer, int bu
  	buffer += buflen - sz;
  	return memcpy(buffer, temp, sz);
  }
diff --git a/target/linux/generic/hack-6.1/911-kobject_add_broadcast_uevent.patch b/target/linux/generic/hack-6.1/911-kobject_add_broadcast_uevent.patch
index a487d55193..9854585d25 100644
--- a/target/linux/generic/hack-6.1/911-kobject_add_broadcast_uevent.patch
+++ b/target/linux/generic/hack-6.1/911-kobject_add_broadcast_uevent.patch
@@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #ifdef CONFIG_UEVENT_HELPER
  /* path to the userspace helper executed on an event */
  extern char uevent_helper[];
-@@ -244,4 +246,7 @@ int kobject_synth_uevent(struct kobject
+@@ -224,4 +226,7 @@ int kobject_synth_uevent(struct kobject
  __printf(2, 3)
  int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...);
  
diff --git a/target/linux/generic/hack-6.1/920-device_tree_cmdline.patch b/target/linux/generic/hack-6.1/920-device_tree_cmdline.patch
index 2722266722..cc384bb553 100644
--- a/target/linux/generic/hack-6.1/920-device_tree_cmdline.patch
+++ b/target/linux/generic/hack-6.1/920-device_tree_cmdline.patch
@@ -9,7 +9,7 @@ Subject: [PATCH] of/ftd: add device tree cmdline
 
 --- a/drivers/of/fdt.c
 +++ b/drivers/of/fdt.c
-@@ -1158,6 +1158,9 @@ int __init early_init_dt_scan_chosen(uns
+@@ -1183,6 +1183,9 @@ int __init early_init_dt_scan_chosen(cha
  	p = of_get_flat_dt_prop(node, "bootargs", &l);
  	if (p != NULL && l > 0)
  		strscpy(cmdline, p, min(l, COMMAND_LINE_SIZE));
@@ -17,5 +17,5 @@ Subject: [PATCH] of/ftd: add device tree cmdline
 +	if (p != NULL && l > 0)
 +		strlcat(cmdline, p, min_t(int, strlen(cmdline) + (int)l, COMMAND_LINE_SIZE));
  
+ handle_cmdline:
  	/*
- 	 * CONFIG_CMDLINE is meant to be a default in case nothing else
diff --git a/target/linux/generic/hack-6.1/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch b/target/linux/generic/hack-6.1/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
index 4f4d6c7509..98081c4b64 100644
--- a/target/linux/generic/hack-6.1/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
+++ b/target/linux/generic/hack-6.1/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
-@@ -1562,7 +1562,7 @@ static void device_links_purge(struct de
+@@ -1700,7 +1700,7 @@ static void device_links_purge(struct de
  #define FW_DEVLINK_FLAGS_RPM		(FW_DEVLINK_FLAGS_ON | \
  					 DL_FLAG_PM_RUNTIME)
  




More information about the lede-commits mailing list