generic: 6.1: refresh hack patches

Refresh hack patches with make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
Christian Marangi 2023-05-22 18:07:13 +02:00
parent f79af59383
commit aa56d00aa6
No known key found for this signature in database
GPG key ID: AC001D09ADBFEAD7
44 changed files with 205 additions and 232 deletions

View file

@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/include/linux/module.h --- a/include/linux/module.h
+++ b/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" */ /* Generic info of form tag = "info" */
#define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info) #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* For userspace: you can also call me... */ /* For userspace: you can also call me... */
#define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias) #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 * Author(s), use "Name <email>" or just "Name", for multiple
* authors use multiple MODULE_AUTHOR() statements/lines. * authors use multiple MODULE_AUTHOR() statements/lines.
*/ */
@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* Creates an alias so file2alias.c can find device table. */ /* Creates an alias so file2alias.c can find device table. */
#define MODULE_DEVICE_TABLE(type, name) \ #define MODULE_DEVICE_TABLE(type, name) \
extern typeof(name) __mod_##type##__##name##_device_table \ 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) #if defined(MODULE) || !defined(CONFIG_SYSFS)
@ -49,14 +49,14 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#else #else
#define MODULE_VERSION(_version) \ #define MODULE_VERSION(_version) \
MODULE_INFO(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 /* Optional firmware file (or files) needed by the module
* format is simply firmware file name. Multiple firmware * format is simply firmware file name. Multiple firmware
* files require multiple MODULE_FIRMWARE() specifiers */ * files require multiple MODULE_FIRMWARE() specifiers */
-#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware) -#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware)
+#define MODULE_FIRMWARE(_firmware) MODULE_INFO_STRIP(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 --- a/include/linux/moduleparam.h
+++ b/include/linux/moduleparam.h +++ b/include/linux/moduleparam.h
@ -88,9 +88,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/kernel/module/Kconfig --- a/kernel/module/Kconfig
+++ b/kernel/module/Kconfig +++ b/kernel/module/Kconfig
@@ -2352,6 +2352,13 @@ config UNUSED_KSYMS_WHITELIST @@ -290,4 +290,11 @@ config MODULES_TREE_LOOKUP
one per line. The path can be absolute, or relative to the kernel def_bool y
source tree. depends on PERF_EVENTS || TRACING || CFI_CLANG
+config MODULE_STRIPPED +config MODULE_STRIPPED
+ bool "Reduce module size" + bool "Reduce module size"
@ -100,11 +100,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+ device tables, etc. + device tables, etc.
+ +
endif # MODULES endif # MODULES
config MODULES_TREE_LOOKUP
--- a/kernel/module/main.c --- a/kernel/module/main.c
+++ b/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; static const char vermagic[] = VERMAGIC_STRING;
@ -112,7 +110,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
int try_to_force_load(struct module *mod, const char *reason) int try_to_force_load(struct module *mod, const char *reason)
{ {
#ifdef CONFIG_MODULE_FORCE_LOAD #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; return -ENOEXEC;
#endif #endif
} }
@ -120,7 +118,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static char *get_modinfo(const struct load_info *info, const char *tag); 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, 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) static int check_modinfo(struct module *mod, struct load_info *info, int flags)
{ {
@ -133,7 +131,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (flags & MODULE_INIT_IGNORE_VERMAGIC) if (flags & MODULE_INIT_IGNORE_VERMAGIC)
modmagic = NULL; modmagic = NULL;
@@ -3289,6 +3293,7 @@ static int check_modinfo(struct module * @@ -1973,6 +1977,7 @@ static int check_modinfo(struct module *
mod->name); mod->name);
add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK); add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK);
} }
@ -143,7 +141,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/scripts/mod/modpost.c --- a/scripts/mod/modpost.c
+++ b/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); symname = remove_dot(info.strtab + sym->st_name);
handle_symbol(mod, &info, sym, symname); handle_symbol(mod, &info, sym, symname);
@ -153,7 +151,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
for (sym = info.symtab_start; sym < info.symtab_stop; sym++) { 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_SALT;\n");
buf_printf(b, "BUILD_LTO_INFO;\n"); buf_printf(b, "BUILD_LTO_INFO;\n");
buf_printf(b, "\n"); buf_printf(b, "\n");
@ -164,7 +162,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
buf_printf(b, "\n"); buf_printf(b, "\n");
buf_printf(b, "__visible struct module __this_module\n"); buf_printf(b, "__visible struct module __this_module\n");
buf_printf(b, "__section(\".gnu.linkonce.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, "\t.arch = MODULE_ARCH_INIT,\n");
buf_printf(b, "};\n"); buf_printf(b, "};\n");
@ -175,7 +173,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
buf_printf(b, buf_printf(b,
"\n" "\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" "MODULE_INFO(retpoline, \"Y\");\n"
"#endif\n"); "#endif\n");
@ -186,7 +184,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (strstarts(mod->name, "tools/testing")) if (strstarts(mod->name, "tools/testing"))
buf_printf(b, "\nMODULE_INFO(test, \"Y\");\n"); 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) static void add_srcversion(struct buffer *b, struct module *mod)
{ {
@ -200,7 +198,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
static void write_buf(struct buffer *b, const char *fname) 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_exported_symbols(&buf, mod);
add_versions(&buf, mod); add_versions(&buf, mod);
add_depends(&buf, mod); add_depends(&buf, mod);

View file

@ -19,7 +19,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
--- a/scripts/kconfig/conf.c --- a/scripts/kconfig/conf.c
+++ b/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 */ /* fall through */
default: default:
@ -29,7 +29,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
fflush(stdout); fflush(stdout);
xfgets(line, sizeof(line), stdin); xfgets(line, sizeof(line), stdin);
break; 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 */ /* fall through */
case oldaskconfig: case oldaskconfig:

View file

@ -3039,7 +3039,7 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
main(int argc, char **argv) main(int argc, char **argv)
--- a/scripts/mod/modpost.h --- a/scripts/mod/modpost.h
+++ b/scripts/mod/modpost.h +++ b/scripts/mod/modpost.h
@@ -8,7 +8,11 @@ @@ -9,7 +9,11 @@
#include <sys/mman.h> #include <sys/mman.h>
#include <fcntl.h> #include <fcntl.h>
#include <unistd.h> #include <unistd.h>
@ -3049,5 +3049,5 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
+#include "elf.h" +#include "elf.h"
+#endif +#endif
#include "list.h"
#include "elfconfig.h" #include "elfconfig.h"

View file

@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
struct kmem_cache; struct kmem_cache;
--- a/tools/perf/pmu-events/jevents.py --- a/tools/perf/pmu-events/jevents.py
+++ b/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/header.h"
#include "util/pmu.h" #include "util/pmu.h"
#include <string.h> #include <string.h>
@ -91,30 +91,3 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <stddef.h> #include <stddef.h>
struct compact_pmu_event { 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)

View file

@ -12,7 +12,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
--- ---
--- a/arch/arm/Kconfig --- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig +++ b/arch/arm/Kconfig
@@ -117,6 +117,7 @@ config ARM @@ -122,6 +122,7 @@ config ARM
select HAVE_UID16 select HAVE_UID16
select HAVE_VIRT_CPU_ACCOUNTING_GEN select HAVE_VIRT_CPU_ACCOUNTING_GEN
select IRQ_FORCED_THREADING select IRQ_FORCED_THREADING
@ -22,14 +22,14 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
select OF_EARLY_FLATTREE if OF select OF_EARLY_FLATTREE if OF
--- a/arch/arm/boot/compressed/Makefile --- a/arch/arm/boot/compressed/Makefile
+++ b/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) ifeq ($(CONFIG_USE_OF),y)
OBJS += $(libfdt_objs) fdt_check_mem_start.o OBJS += $(libfdt_objs) fdt_check_mem_start.o
endif endif
+KBUILD_CFLAGS_KERNEL := $(patsubst -f%-sections,,$(KBUILD_CFLAGS_KERNEL)) +KBUILD_CFLAGS_KERNEL := $(patsubst -f%-sections,,$(KBUILD_CFLAGS_KERNEL))
# -fstack-protector-strong triggers protection checks in this code, OBJS += lib1funcs.o ashldi3.o bswapsdi2.o
# but it is being used too early to link to meaningful stack_chk logic.
--- a/arch/arm/kernel/vmlinux.lds.S --- a/arch/arm/kernel/vmlinux.lds.S
+++ b/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S
@@ -75,7 +75,7 @@ SECTIONS @@ -75,7 +75,7 @@ SECTIONS

View file

@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* Align . to a 8 byte boundary equals to maximum function alignment. */ /* Align . to a 8 byte boundary equals to maximum function alignment. */
#define ALIGN_FUNCTION() . = ALIGN(8) #define ALIGN_FUNCTION() . = ALIGN(8)
@@ -485,14 +495,14 @@ @@ -512,14 +522,14 @@
/* Kernel symbol table: Normal symbols */ \ /* Kernel symbol table: Normal symbols */ \
__ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \ __ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
__start___ksymtab = .; \ __start___ksymtab = .; \
@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
__stop___ksymtab_gpl = .; \ __stop___ksymtab_gpl = .; \
} \ } \
\ \
@@ -512,7 +522,7 @@ @@ -539,7 +549,7 @@
\ \
/* Kernel symbol table: strings */ \ /* Kernel symbol table: strings */ \
__ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \ __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} \ } \
\ \
/* __*init sections */ \ /* __*init sections */ \
@@ -1018,6 +1028,8 @@ @@ -1048,6 +1058,8 @@
#define COMMON_DISCARDS \ #define COMMON_DISCARDS \
SANITIZER_DISCARDS \ SANITIZER_DISCARDS \
PATCHABLE_DISCARDS \ PATCHABLE_DISCARDS \
@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
*(.modinfo) \ *(.modinfo) \
--- a/include/linux/export.h --- a/include/linux/export.h
+++ b/include/linux/export.h +++ b/include/linux/export.h
@@ -84,6 +84,12 @@ struct kernel_symbol { @@ -72,6 +72,12 @@ struct kernel_symbol {
#else #else
@ -80,7 +80,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* /*
* For every exported symbol, do the following: * 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 typeof(sym) sym; \
extern const char __kstrtab_##sym[]; \ extern const char __kstrtab_##sym[]; \
extern const char __kstrtabns_##sym[]; \ extern const char __kstrtabns_##sym[]; \
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
"__kstrtabns_" #sym ": \n" \ "__kstrtabns_" #sym ": \n" \
--- a/include/asm-generic/export.h --- a/include/asm-generic/export.h
+++ b/include/asm-generic/export.h +++ b/include/asm-generic/export.h
@@ -26,6 +26,12 @@ @@ -31,6 +31,12 @@
#endif #endif
.endm .endm
@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* /*
* note on .section use: we specify progbits since usage of the "M" (SHF_MERGE) * 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 * section flag requires it. Use '%progbits' instead of '@progbits' since the
@@ -39,7 +45,7 @@ @@ -44,7 +50,7 @@
__ksymtab_\name: __ksymtab_\name:
__put \val, __kstrtab_\name __put \val, __kstrtab_\name
.previous .previous
@ -115,7 +115,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
.previous .previous
--- a/scripts/Makefile.build --- a/scripts/Makefile.build
+++ b/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) # Linker scripts preprocessor (.lds.S -> .lds)
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
quiet_cmd_cpp_lds_S = LDS $@ quiet_cmd_cpp_lds_S = LDS $@

View file

@ -23,7 +23,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
{ {0x02, 0x21}, "lz4", unlz4 }, { {0x02, 0x21}, "lz4", unlz4 },
--- a/scripts/Makefile.lib --- a/scripts/Makefile.lib
+++ b/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 $@ quiet_cmd_lzma = LZMA $@
@ -35,4 +35,4 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
+ cmd_lzma_with_size = { cat $(real-prereqs) | $(LZMA) e -d20 -lc1 -lp2 -pb2 -eos -si -so; $(size_append); } > $@ + cmd_lzma_with_size = { cat $(real-prereqs) | $(LZMA) e -d20 -lc1 -lp2 -pb2 -eos -si -so; $(size_append); } > $@
quiet_cmd_lzo = LZO $@ quiet_cmd_lzo = LZO $@
cmd_lzo = { cat $(real-prereqs) | $(KLZOP) -9; $(size_append); } > $@ cmd_lzo = cat $(real-prereqs) | $(KLZOP) -9 > $@

View file

@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/netfilter/Kconfig --- a/net/netfilter/Kconfig
+++ b/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 config NF_CONNTRACK_H323
tristate "H.323 protocol support" tristate "H.323 protocol support"
@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
depends on NETFILTER_ADVANCED depends on NETFILTER_ADVANCED
help help
H.323 is a VoIP signalling protocol from ITU-T. As one of the most 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 config NETFILTER_XT_TARGET_TCPMSS
tristate '"TCPMSS" target support' tristate '"TCPMSS" target support'

View file

@ -16,8 +16,8 @@ Signed-off-by: John Crispin <john@phrozen.org>
--- a/crypto/Kconfig --- a/crypto/Kconfig
+++ b/crypto/Kconfig +++ b/crypto/Kconfig
@@ -34,7 +34,7 @@ config CRYPTO_FIPS @@ -55,7 +55,7 @@ config CRYPTO_FIPS_VERSION
this is. By default the KERNELRELEASE value is used.
config CRYPTO_ALGAPI config CRYPTO_ALGAPI
- tristate - tristate
@ -25,7 +25,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
select CRYPTO_ALGAPI2 select CRYPTO_ALGAPI2
help help
This option provides the API for cryptographic algorithms. This option provides the API for cryptographic algorithms.
@@ -43,7 +43,7 @@ config CRYPTO_ALGAPI2 @@ -64,7 +64,7 @@ config CRYPTO_ALGAPI2
tristate tristate
config CRYPTO_AEAD config CRYPTO_AEAD
@ -34,7 +34,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
select CRYPTO_AEAD2 select CRYPTO_AEAD2
select CRYPTO_ALGAPI select CRYPTO_ALGAPI
@@ -54,7 +54,7 @@ config CRYPTO_AEAD2 @@ -75,7 +75,7 @@ config CRYPTO_AEAD2
select CRYPTO_RNG2 select CRYPTO_RNG2
config CRYPTO_SKCIPHER config CRYPTO_SKCIPHER
@ -43,7 +43,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
select CRYPTO_SKCIPHER2 select CRYPTO_SKCIPHER2
select CRYPTO_ALGAPI select CRYPTO_ALGAPI
@@ -64,7 +64,7 @@ config CRYPTO_SKCIPHER2 @@ -85,7 +85,7 @@ config CRYPTO_SKCIPHER2
select CRYPTO_RNG2 select CRYPTO_RNG2
config CRYPTO_HASH config CRYPTO_HASH
@ -52,7 +52,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
select CRYPTO_HASH2 select CRYPTO_HASH2
select CRYPTO_ALGAPI select CRYPTO_ALGAPI
@@ -73,7 +73,7 @@ config CRYPTO_HASH2 @@ -94,7 +94,7 @@ config CRYPTO_HASH2
select CRYPTO_ALGAPI2 select CRYPTO_ALGAPI2
config CRYPTO_RNG config CRYPTO_RNG
@ -92,7 +92,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
bool bool
--- a/lib/Kconfig --- a/lib/Kconfig
+++ b/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 # Textsearch support is select'ed if needed
# #
config TEXTSEARCH config TEXTSEARCH
@ -115,8 +115,8 @@ Signed-off-by: John Crispin <john@phrozen.org>
bool bool
--- a/net/netfilter/Kconfig --- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig +++ b/net/netfilter/Kconfig
@@ -11,7 +11,7 @@ config NETFILTER_INGRESS @@ -22,7 +22,7 @@ config NETFILTER_SKIP_EGRESS
infrastructure. def_bool NETFILTER_EGRESS && (NET_CLS_ACT || IFB)
config NETFILTER_NETLINK config NETFILTER_NETLINK
- tristate - tristate
@ -147,7 +147,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
config CFG80211 config CFG80211
tristate "cfg80211 - wireless configuration API" tristate "cfg80211 - wireless configuration API"
@@ -204,7 +204,7 @@ config CFG80211_WEXT_EXPORT @@ -208,7 +208,7 @@ config CFG80211_WEXT_EXPORT
endif # CFG80211 endif # CFG80211
config LIB80211 config LIB80211
@ -156,7 +156,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
default n default n
help help
This options enables a library of common routines used 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. Drivers should select this themselves if needed.
config LIB80211_CRYPT_WEP config LIB80211_CRYPT_WEP
@ -199,7 +199,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
bool bool
--- a/net/Kconfig --- a/net/Kconfig
+++ b/net/Kconfig +++ b/net/Kconfig
@@ -432,7 +432,7 @@ config NET_DEVLINK @@ -430,7 +430,7 @@ config NET_DEVLINK
default n default n
config PAGE_POOL config PAGE_POOL

View file

@ -10,7 +10,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string
--- a/init/Kconfig --- a/init/Kconfig
+++ b/init/Kconfig +++ b/init/Kconfig
@@ -2388,7 +2388,7 @@ config PADATA @@ -2003,7 +2003,7 @@ config PADATA
bool bool
config ASN1 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 that can be interpreted by the ASN.1 stream decoder and used to
--- a/lib/Kconfig --- a/lib/Kconfig
+++ b/lib/Kconfig +++ b/lib/Kconfig
@@ -614,7 +614,7 @@ config LIBFDT @@ -637,7 +637,7 @@ config LIBFDT
bool bool
config OID_REGISTRY config OID_REGISTRY

View file

@ -125,7 +125,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <linux/err.h> #include <linux/err.h>
#include <linux/property.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; return 0;
} }
postcore_initcall(regmap_initcall); postcore_initcall(regmap_initcall);

View file

@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/crypto/Kconfig --- a/crypto/Kconfig
+++ b/crypto/Kconfig +++ b/crypto/Kconfig
@@ -121,13 +121,13 @@ config CRYPTO_MANAGER @@ -142,13 +142,13 @@ config CRYPTO_MANAGER
cbc(aes). cbc(aes).
config CRYPTO_MANAGER2 config CRYPTO_MANAGER2

View file

@ -13,7 +13,7 @@ from backports.
--- a/lib/crypto/Kconfig --- a/lib/crypto/Kconfig
+++ b/lib/crypto/Kconfig +++ b/lib/crypto/Kconfig
@@ -6,7 +6,7 @@ config CRYPTO_LIB_AES @@ -9,7 +9,7 @@ config CRYPTO_LIB_AES
tristate tristate
config CRYPTO_LIB_ARC4 config CRYPTO_LIB_ARC4

View file

@ -26,7 +26,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
* @name: name of the struct -- the string is not copied internally * @name: name of the struct -- the string is not copied internally
--- a/net/Makefile --- a/net/Makefile
+++ b/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_NETLABEL) += netlabel/
obj-$(CONFIG_IUCV) += iucv/ obj-$(CONFIG_IUCV) += iucv/
obj-$(CONFIG_SMC) += smc/ obj-$(CONFIG_SMC) += smc/

View file

@ -16,7 +16,7 @@ Signed-off-by: Alexandros C. Couloumbis <alex@ozo.com>
--- a/arch/powerpc/Makefile --- a/arch/powerpc/Makefile
+++ b/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 machine-$(CONFIG_CPU_LITTLE_ENDIAN) += le
UTS_MACHINE := $(subst $(space),,$(machine-y)) UTS_MACHINE := $(subst $(space),,$(machine-y))

View file

@ -25,7 +25,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/mtd_blkdevs.c --- a/drivers/mtd/mtd_blkdevs.c
+++ b/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) if (new->readonly)
set_disk_ro(gd, 1); set_disk_ro(gd, 1);
@ -45,7 +45,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
out_free_tag_set: out_free_tag_set:
blk_mq_free_tag_set(new->tag_set); blk_mq_free_tag_set(new->tag_set);
out_kfree_tag_set: out_kfree_tag_set:
@@ -402,6 +395,35 @@ out_list_del: @@ -408,6 +397,35 @@ out_list_del:
return ret; return ret;
} }
@ -91,7 +91,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
#include "mtdcore.h" #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); register_reboot_notifier(&mtd->reboot_notifier);
} }

View file

@ -19,7 +19,7 @@ Subject: [PATCH] kernel: add block fit partition parser
--- a/block/blk.h --- a/block/blk.h
+++ b/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_NONE 0
#define ADDPART_FLAG_RAID 1 #define ADDPART_FLAG_RAID 1
#define ADDPART_FLAG_WHOLEDISK 2 #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); int bdev_del_partition(struct gendisk *disk, int partno);
--- a/block/partitions/Kconfig --- a/block/partitions/Kconfig
+++ b/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 Say Y here if you would like to use hard disks under Linux which
were partitioned under the Atari OS. were partitioned under the Atari OS.
@ -56,7 +56,7 @@ Subject: [PATCH] kernel: add block fit partition parser
obj-$(CONFIG_LDM_PARTITION) += ldm.o obj-$(CONFIG_LDM_PARTITION) += ldm.o
--- a/block/partitions/check.h --- a/block/partitions/check.h
+++ b/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 atari_partition(struct parsed_partitions *state);
int cmdline_partition(struct parsed_partitions *state); int cmdline_partition(struct parsed_partitions *state);
int efi_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 ibm_partition(struct parsed_partitions *);
int karma_partition(struct parsed_partitions *state); int karma_partition(struct parsed_partitions *state);
int ldm_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 sun_partition(struct parsed_partitions *state);
int sysv68_partition(struct parsed_partitions *state); int sysv68_partition(struct parsed_partitions *state);
int ultrix_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); +int parse_fit_partitions(struct parsed_partitions *state, u64 start_sector, u64 nr_sectors, int *slot, int add_remain);
--- a/block/partitions/core.c --- a/block/partitions/core.c
+++ b/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/vmalloc.h>
#include <linux/blktrace_api.h>
#include <linux/raid/detect.h> #include <linux/raid/detect.h>
+#ifdef CONFIG_FIT_PARTITION +#ifdef CONFIG_FIT_PARTITION
+#include <linux/root_dev.h> +#include <linux/root_dev.h>
@ -83,7 +83,7 @@ Subject: [PATCH] kernel: add block fit partition parser
#include "check.h" #include "check.h"
static int (*check_part[])(struct parsed_partitions *) = { 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 #ifdef CONFIG_EFI_PARTITION
efi_partition, /* this must come before msdos */ efi_partition, /* this must come before msdos */
#endif #endif
@ -93,7 +93,7 @@ Subject: [PATCH] kernel: add block fit partition parser
#ifdef CONFIG_SGI_PARTITION #ifdef CONFIG_SGI_PARTITION
sgi_partition, sgi_partition,
#endif #endif
@@ -408,6 +415,11 @@ static struct block_device *add_partitio @@ -398,6 +405,11 @@ static struct block_device *add_partitio
goto out_del; goto out_del;
} }
@ -105,7 +105,7 @@ Subject: [PATCH] kernel: add block fit partition parser
/* everything is up and running, commence */ /* everything is up and running, commence */
err = xa_insert(&disk->part_tbl, partno, bdev, GFP_KERNEL); err = xa_insert(&disk->part_tbl, partno, bdev, GFP_KERNEL);
if (err) 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)) (state->parts[p].flags & ADDPART_FLAG_RAID))
md_autodetect_dev(part->bd_dev); md_autodetect_dev(part->bd_dev);
@ -143,7 +143,7 @@ Subject: [PATCH] kernel: add block fit partition parser
kfree(gpt); kfree(gpt);
--- a/block/partitions/efi.h --- a/block/partitions/efi.h
+++ b/block/partitions/efi.h +++ b/block/partitions/efi.h
@@ -52,6 +52,9 @@ @@ -51,6 +51,9 @@
#define PARTITION_LINUX_LVM_GUID \ #define PARTITION_LINUX_LVM_GUID \
EFI_GUID( 0xe6d6d379, 0xf507, 0x44c2, \ EFI_GUID( 0xe6d6d379, 0xf507, 0x44c2, \
0xa2, 0x3c, 0x23, 0x8f, 0x2a, 0x3d, 0xf9, 0x28) 0xa2, 0x3c, 0x23, 0x8f, 0x2a, 0x3d, 0xf9, 0x28)

View file

@ -12,7 +12,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
--- a/drivers/mtd/mtdcore.c --- a/drivers/mtd/mtdcore.c
+++ b/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); mutex_unlock(&mtd_table_mutex);

View file

@ -23,7 +23,7 @@ Subject: [PATCH] mtd/nand: add MediaTek NAND bad block managment table
depends on HAS_IOMEM depends on HAS_IOMEM
--- a/drivers/mtd/nand/Makefile --- a/drivers/mtd/nand/Makefile
+++ b/drivers/mtd/nand/Makefile +++ b/drivers/mtd/nand/Makefile
@@ -2,6 +2,7 @@ @@ -3,6 +3,7 @@
nandcore-objs := core.o bbt.o nandcore-objs := core.o bbt.o
obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o
obj-$(CONFIG_MTD_NAND_ECC_MEDIATEK) += ecc-mtk.o obj-$(CONFIG_MTD_NAND_ECC_MEDIATEK) += ecc-mtk.o

View file

@ -25,7 +25,7 @@ Subject: [PATCH] net/bridge: add bridge offload
--- a/include/linux/if_bridge.h --- a/include/linux/if_bridge.h
+++ b/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_TX_FWD_OFFLOAD BIT(20)
#define BR_PORT_LOCKED BIT(21) #define BR_PORT_LOCKED BIT(21)
#define BR_BPDU_FILTER BIT(22) #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. * 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) if (err)
goto err_out; goto err_out;
@ -65,7 +65,7 @@ Subject: [PATCH] net/bridge: add bridge offload
err = register_pernet_subsys(&br_net_ops); err = register_pernet_subsys(&br_net_ops);
if (err) if (err)
goto err_out1; goto err_out1;
@@ -430,6 +435,8 @@ err_out3: @@ -438,6 +443,8 @@ err_out3:
err_out2: err_out2:
unregister_pernet_subsys(&br_net_ops); unregister_pernet_subsys(&br_net_ops);
err_out1: err_out1:
@ -74,7 +74,7 @@ Subject: [PATCH] net/bridge: add bridge offload
br_fdb_fini(); br_fdb_fini();
err_out: err_out:
stp_proto_unregister(&br_stp_proto); 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) #if IS_ENABLED(CONFIG_ATM_LANE)
br_fdb_test_addr_hook = NULL; br_fdb_test_addr_hook = NULL;
#endif #endif
@ -84,7 +84,7 @@ Subject: [PATCH] net/bridge: add bridge offload
--- a/net/bridge/br_device.c --- a/net/bridge/br_device.c
+++ b/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_hello_time = br->hello_time = 2 * HZ;
br->bridge_forward_delay = br->forward_delay = 15 * HZ; br->bridge_forward_delay = br->forward_delay = 15 * HZ;
br->bridge_ageing_time = br->ageing_time = BR_DEFAULT_AGEING_TIME; 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 = { static const struct rhashtable_params br_fdb_rht_params = {
.head_offset = offsetof(struct net_bridge_fdb_entry, rhnode), .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; struct sk_buff *skb;
int err = -ENOBUFS; int err = -ENOBUFS;
@ -112,13 +112,13 @@ Subject: [PATCH] net/bridge: add bridge offload
if (swdev_notify) if (swdev_notify)
br_switchdev_fdb_notify(br, fdb, type); 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->key.vlan_id = vid;
fdb->flags = flags; fdb->flags = flags;
fdb->updated = fdb->used = jiffies; fdb->updated = fdb->used = jiffies;
+ INIT_HLIST_HEAD(&fdb->offload_in); + INIT_HLIST_HEAD(&fdb->offload_in);
+ INIT_HLIST_HEAD(&fdb->offload_out); + 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); br_fdb_rht_params);
if (err) { if (err) {
--- a/net/bridge/br_forward.c --- a/net/bridge/br_forward.c
@ -150,7 +150,7 @@ Subject: [PATCH] net/bridge: add bridge offload
/* /*
* Determine initial path cost based on speed. * 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->path_cost = port_cost(dev);
p->priority = 0x8000 >> BR_PORT_BITS; p->priority = 0x8000 >> BR_PORT_BITS;
p->port_no = index; p->port_no = index;
@ -159,7 +159,7 @@ Subject: [PATCH] net/bridge: add bridge offload
br_init_port(p); br_init_port(p);
br_set_state(p, BR_STATE_DISABLED); br_set_state(p, BR_STATE_DISABLED);
br_stp_port_timer_init(p); 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) if (mask & BR_NEIGH_SUPPRESS)
br_recalculate_neigh_suppress_enabled(br); br_recalculate_neigh_suppress_enabled(br);
@ -179,7 +179,7 @@ Subject: [PATCH] net/bridge: add bridge offload
static int static int
br_netif_receive_skb(struct net *net, struct sock *sk, struct sk_buff *skb) 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; dst->used = now;
br_forward(dst->dst, skb, local_rcv, false); br_forward(dst->dst, skb, local_rcv, false);
} else { } else {
@ -187,7 +187,7 @@ Subject: [PATCH] net/bridge: add bridge offload
if (!mcast_hit) if (!mcast_hit)
br_flood(br, skb, pkt_type, local_rcv, false); br_flood(br, skb, pkt_type, local_rcv, false);
else 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)); memset(skb->cb, 0, sizeof(struct br_input_skb_cb));
p = br_port_get_rcu(skb->dev); p = br_port_get_rcu(skb->dev);
@ -640,7 +640,7 @@ Subject: [PATCH] net/bridge: add bridge offload
+} +}
--- a/net/bridge/br_private.h --- a/net/bridge/br_private.h
+++ b/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 updated ____cacheline_aligned_in_smp;
unsigned long used; unsigned long used;
@ -654,8 +654,8 @@ Subject: [PATCH] net/bridge: add bridge offload
+ }; + };
}; };
#define MDB_PG_FLAGS_PERMANENT BIT(0) struct net_bridge_fdb_flush_desc {
@@ -343,6 +349,12 @@ struct net_bridge_mdb_entry { @@ -353,6 +359,12 @@ struct net_bridge_mdb_entry {
struct rcu_head rcu; struct rcu_head rcu;
}; };
@ -668,7 +668,7 @@ Subject: [PATCH] net/bridge: add bridge offload
struct net_bridge_port { struct net_bridge_port {
struct net_bridge *br; struct net_bridge *br;
struct net_device *dev; struct net_device *dev;
@@ -403,6 +415,7 @@ struct net_bridge_port { @@ -414,6 +426,7 @@ struct net_bridge_port {
u16 backup_redirected_cnt; u16 backup_redirected_cnt;
struct bridge_stp_xstats stp_xstats; 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) #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; struct kobject *ifobj;
u32 auto_cnt; u32 auto_cnt;
@ -686,7 +686,7 @@ Subject: [PATCH] net/bridge: add bridge offload
#ifdef CONFIG_NET_SWITCHDEV #ifdef CONFIG_NET_SWITCHDEV
/* Counter used to make sure that hardware domains get unique /* Counter used to make sure that hardware domains get unique
* identifiers in case a bridge spans multiple switchdev instances. * 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 #ifdef CONFIG_NETFILTER_FAMILY_BRIDGE
u8 br_netfilter_broute:1; u8 br_netfilter_broute:1;
#endif #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) /* since time values in bpdu are in jiffies and then scaled (1/256)
* before sending, make sure that is at least one STP tick. * 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, (unsigned int) p->port_no, p->dev->name,
br_port_state_names[p->state]); 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 /* IMPORTANT: new bridge options must be added with netlink support only
* please do not add new sysfs entries * 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); static DEVICE_ATTR_RW(vlan_stats_per_port);
#endif #endif
@ -791,7 +791,7 @@ Subject: [PATCH] net/bridge: add bridge offload
static struct attribute *bridge_attrs[] = { static struct attribute *bridge_attrs[] = {
&dev_attr_forward_delay.attr, &dev_attr_forward_delay.attr,
&dev_attr_hello_time.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_enabled.attr,
&dev_attr_vlan_stats_per_port.attr, &dev_attr_vlan_stats_per_port.attr,
#endif #endif

View file

@ -83,7 +83,7 @@ Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
--- a/include/uapi/linux/netfilter/xt_connmark.h --- a/include/uapi/linux/netfilter/xt_connmark.h
+++ b/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 { enum {
@ -95,7 +95,7 @@ Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
D_SHIFT_LEFT = 0, D_SHIFT_LEFT = 0,
D_SHIFT_RIGHT, 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; __u8 shift_dir, shift_bits, mode;
}; };

View file

@ -8,7 +8,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/netfilter/Kconfig --- a/net/netfilter/Kconfig
+++ b/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 depends on NETFILTER_ADVANCED
select NETFILTER_XT_TARGET_CT select NETFILTER_XT_TARGET_CT
@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
depends on NETFILTER_ADVANCED depends on NETFILTER_ADVANCED
--- a/net/netfilter/Makefile --- a/net/netfilter/Makefile
+++ b/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_CONNSECMARK) += xt_CONNSECMARK.o
obj-$(CONFIG_NETFILTER_XT_TARGET_CT) += xt_CT.o obj-$(CONFIG_NETFILTER_XT_TARGET_CT) += xt_CT.o
obj-$(CONFIG_NETFILTER_XT_TARGET_DSCP) += xt_DSCP.o obj-$(CONFIG_NETFILTER_XT_TARGET_DSCP) += xt_DSCP.o
@ -745,7 +745,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <net/netfilter/nf_flow_table.h> #include <net/netfilter/nf_flow_table.h>
#include <net/netfilter/nf_conntrack.h> #include <net/netfilter/nf_conntrack.h>
#include <net/netfilter/nf_conntrack_core.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); EXPORT_SYMBOL_GPL(flow_offload_lookup);
@ -755,13 +755,13 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
void (*iter)(struct nf_flowtable *flowtable, void (*iter)(struct nf_flowtable *flowtable,
struct flow_offload *flow, void *data), struct flow_offload *flow, void *data),
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); nf_flow_offload_stats(flow_table, flow);
} }
} }
+EXPORT_SYMBOL_GPL(nf_flow_table_iterate); +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 --- /dev/null
+++ b/include/uapi/linux/netfilter/xt_FLOWOFFLOAD.h +++ b/include/uapi/linux/netfilter/xt_FLOWOFFLOAD.h
@ -785,7 +785,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+#endif /* _XT_FLOWOFFLOAD_H */ +#endif /* _XT_FLOWOFFLOAD_H */
--- a/include/net/netfilter/nf_flow_table.h --- a/include/net/netfilter/nf_flow_table.h
+++ b/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); void flow_offload_teardown(struct flow_offload *flow);

View file

@ -11,7 +11,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
--- a/include/linux/netdevice.h --- a/include/linux/netdevice.h
+++ b/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) #if defined(CONFIG_HYPERV_NET)
# define LL_MAX_HEADER 128 # define LL_MAX_HEADER 128

View file

@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/sched/sch_fq_codel.c --- a/net/sched/sch_fq_codel.c
+++ b/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; sch->limit = 10*1024;
q->flows_cnt = 1024; q->flows_cnt = 1024;

View file

@ -14,7 +14,7 @@ Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
--- a/net/netfilter/nf_conntrack_core.c --- a/net/netfilter/nf_conntrack_core.c
+++ b/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) { if (!nf_conntrack_htable_size) {
nf_conntrack_htable_size nf_conntrack_htable_size

View file

@ -9,7 +9,7 @@ Subject: [PATCH] net/dsa/mv88e6xxx: disable ATU violation
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/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 else
reg = 1 << port; reg = 1 << port;

View file

@ -9,7 +9,7 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
--- a/drivers/net/phy/aquantia_main.c --- a/drivers/net/phy/aquantia_main.c
+++ b/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_AQCS109 0x03a1b5c2
#define PHY_ID_AQR405 0x03a1b4b0 #define PHY_ID_AQR405 0x03a1b4b0
#define PHY_ID_AQR113C 0x31c31c12 #define PHY_ID_AQR113C 0x31c31c12
@ -17,7 +17,7 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
#define MDIO_PHYXS_VEND_IF_STATUS 0xe812 #define MDIO_PHYXS_VEND_IF_STATUS 0xe812
#define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3) #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; return 0;
} }
@ -67,7 +67,7 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
static int aqr107_read_status(struct phy_device *phydev) static int aqr107_read_status(struct phy_device *phydev)
{ {
int val, ret; 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); build_id = FIELD_GET(VEND1_GLOBAL_RSVD_STAT1_FW_BUILD_ID, val);
prov_id = FIELD_GET(VEND1_GLOBAL_RSVD_STAT1_PROV_ID, val); prov_id = FIELD_GET(VEND1_GLOBAL_RSVD_STAT1_PROV_ID, val);
@ -76,7 +76,7 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
fw_major, fw_minor, build_id, prov_id); 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_aneg = aqr_config_aneg,
.config_intr = aqr_config_intr, .config_intr = aqr_config_intr,
.handle_interrupt = aqr_handle_interrupt, .handle_interrupt = aqr_handle_interrupt,
@ -85,9 +85,9 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
.get_tunable = aqr107_get_tunable, .get_tunable = aqr107_get_tunable,
.set_tunable = aqr107_set_tunable, .set_tunable = aqr107_set_tunable,
.suspend = aqr107_suspend, .suspend = aqr107_suspend,
@@ -708,6 +762,24 @@ static struct phy_driver aqr_driver[] = @@ -819,6 +863,24 @@ static struct phy_driver aqr_driver[] =
.handle_interrupt = aqr_handle_interrupt, .get_stats = aqr107_get_stats,
.read_status = aqr_read_status, .link_change_notify = aqr107_link_change_notify,
}, },
+{ +{
+ PHY_ID_MATCH_MODEL(PHY_ID_AQR813), + PHY_ID_MATCH_MODEL(PHY_ID_AQR813),
@ -110,7 +110,7 @@ Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
}; };
module_phy_driver(aqr_driver); 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_AQCS109) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR405) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR405) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) },

View file

@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/include/linux/netdevice.h --- a/include/linux/netdevice.h
+++ b/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_LIVE_RENAME_OK = 1<<30,
IFF_TX_SKB_NO_LINEAR = BIT_ULL(31), IFF_TX_SKB_NO_LINEAR = BIT_ULL(31),
IFF_CHANGE_PROTO_DOWN = BIT_ULL(32), IFF_CHANGE_PROTO_DOWN = BIT_ULL(32),
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}; };
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN #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_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK #define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
#define IFF_TX_SKB_NO_LINEAR IFF_TX_SKB_NO_LINEAR #define IFF_TX_SKB_NO_LINEAR IFF_TX_SKB_NO_LINEAR
@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* Specifies the type of the struct net_device::ml_priv pointer */ /* Specifies the type of the struct net_device::ml_priv pointer */
enum netdev_ml_priv_type { 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; const struct tlsdev_ops *tlsdev_ops;
#endif #endif
@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
const struct header_ops *header_ops; const struct header_ops *header_ops;
unsigned char operstate; unsigned char operstate;
@@ -2122,6 +2133,10 @@ struct net_device { @@ -2181,6 +2188,10 @@ struct net_device {
struct mctp_dev __rcu *mctp_ptr; struct mctp_dev __rcu *mctp_ptr;
#endif #endif
@ -60,7 +60,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
*/ */
--- a/include/linux/skbuff.h --- a/include/linux/skbuff.h
+++ b/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; return (len < skb->len) ? __pskb_trim(skb, len) : 0;
} }
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/** /**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer * pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter * @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@nbd.name>
help help
--- a/net/core/dev.c --- a/net/core/dev.c
+++ b/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)) if (dev_nit_active(dev))
dev_queue_xmit_nit(skb, dev); dev_queue_xmit_nit(skb, dev);
@ -127,7 +127,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <net/protocol.h> #include <net/protocol.h>
#include <net/dst.h> #include <net/dst.h>
@@ -602,6 +603,22 @@ skb_fail: @@ -707,6 +708,22 @@ skb_fail:
} }
EXPORT_SYMBOL(__napi_alloc_skb); EXPORT_SYMBOL(__napi_alloc_skb);
@ -152,7 +152,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
{ {
--- a/net/ethernet/eth.c --- a/net/ethernet/eth.c
+++ b/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; const struct ethhdr *eth;
skb->dev = dev; skb->dev = dev;

View file

@ -15,7 +15,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
--- a/drivers/net/phy/aquantia_main.c --- a/drivers/net/phy/aquantia_main.c
+++ b/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_AQR405 0x03a1b4b0
#define PHY_ID_AQR113C 0x31c31c12 #define PHY_ID_AQR113C 0x31c31c12
#define PHY_ID_AQR813 0x31c31cb2 #define PHY_ID_AQR813 0x31c31cb2
@ -24,9 +24,9 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
#define MDIO_PHYXS_VEND_IF_STATUS 0xe812 #define MDIO_PHYXS_VEND_IF_STATUS 0xe812
#define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3) #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3)
@@ -126,6 +128,29 @@ @@ -151,6 +153,29 @@
#define VEND1_GLOBAL_INT_VEND_MASK_GLOBAL2 BIT(1) #define AQR107_OP_IN_PROG_SLEEP 1000
#define VEND1_GLOBAL_INT_VEND_MASK_GLOBAL3 BIT(0) #define AQR107_OP_IN_PROG_TIMEOUT 100000
+/* registers in MDIO_MMD_VEND1 region */ +/* registers in MDIO_MMD_VEND1 region */
+#define AQUANTIA_VND1_GLOBAL_SC 0x000 +#define AQUANTIA_VND1_GLOBAL_SC 0x000
@ -54,7 +54,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
struct aqr107_hw_stat { struct aqr107_hw_stat {
const char *name; const char *name;
int reg; 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); return genphy_c45_check_and_restart_aneg(phydev, changed);
} }
@ -106,7 +106,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
static int aqr_config_intr(struct phy_device *phydev) static int aqr_config_intr(struct phy_device *phydev)
{ {
bool en = phydev->interrupts == PHY_INTERRUPT_ENABLED; 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, .get_stats = aqr107_get_stats,
.link_change_notify = aqr107_link_change_notify, .link_change_notify = aqr107_link_change_notify,
}, },
@ -137,7 +137,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
}; };
module_phy_driver(aqr_driver); 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_AQR405) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR813) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR813) },
@ -145,3 +145,4 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
+ { PHY_ID_MATCH_MODEL(PHY_ID_AQR412) }, + { PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
{ } { }
}; };

View file

@ -14,7 +14,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
--- a/drivers/net/phy/aquantia_main.c --- a/drivers/net/phy/aquantia_main.c
+++ b/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, phy_write_mmd(phydev, MDIO_MMD_VEND1, AQUANTIA_VND1_GSTART_RATE,
aquantia_syscfg[if_type].start_rate); aquantia_syscfg[if_type].start_rate);

View file

@ -10,7 +10,7 @@ Add a new entry for AQR113 PHY_ID
--- a/drivers/net/phy/aquantia_main.c --- a/drivers/net/phy/aquantia_main.c
+++ b/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_AQR813 0x31c31cb2
#define PHY_ID_AQR112 0x03a1b662 #define PHY_ID_AQR112 0x03a1b662
#define PHY_ID_AQR412 0x03a1b712 #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 0xe812
#define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3) #define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3)
@@ -869,6 +870,14 @@ static struct phy_driver aqr_driver[] = @@ -981,6 +982,14 @@ static struct phy_driver aqr_driver[] =
.get_strings = aqr107_get_strings, .get_strings = aqr107_get_strings,
.get_stats = aqr107_get_stats, .get_stats = aqr107_get_stats,
}, },
+{ +{
@ -33,10 +33,11 @@ Add a new entry for AQR113 PHY_ID
}; };
module_phy_driver(aqr_driver); 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_AQR813) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR112) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR112) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
+ { PHY_ID_MATCH_MODEL(PHY_ID_AQR113) }, + { PHY_ID_MATCH_MODEL(PHY_ID_AQR113) },
{ } { }
}; };

View file

@ -12,7 +12,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/net/phy/aquantia_main.c --- a/drivers/net/phy/aquantia_main.c
+++ b/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_AQR112 0x03a1b662
#define PHY_ID_AQR412 0x03a1b712 #define PHY_ID_AQR412 0x03a1b712
#define PHY_ID_AQR113 0x31c31c40 #define PHY_ID_AQR113 0x31c31c40
@ -21,7 +21,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
#define MDIO_PHYXS_VEND_IF_STATUS 0xe812 #define MDIO_PHYXS_VEND_IF_STATUS 0xe812
#define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3) #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, .handle_interrupt = aqr_handle_interrupt,
.read_status = aqr107_read_status, .read_status = aqr107_read_status,
}, },
@ -52,7 +52,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}; };
module_phy_driver(aqr_driver); 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_AQR112) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113) }, { PHY_ID_MATCH_MODEL(PHY_ID_AQR113) },
@ -60,3 +60,4 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ { PHY_ID_MATCH_MODEL(PHY_ID_AQR112R) }, + { PHY_ID_MATCH_MODEL(PHY_ID_AQR112R) },
{ } { }
}; };

View file

@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
#include <linux/crc32.h> #include <linux/crc32.h>
#include <linux/if_vlan.h> #include <linux/if_vlan.h>
#include <linux/uaccess.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); ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
} }
@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
static void r8152b_init(struct r8152 *tp) static void r8152b_init(struct r8152 *tp)
{ {
u32 ocp_data; 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 = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN); ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data); ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
} }
static void r8153_init(struct r8152 *tp) 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; tp->coalesce = COALESCE_SLOW;
break; break;
} }
@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
} }
static void r8153b_init(struct r8152 *tp) 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); rtl_tally_reset(tp);
tp->coalesce = 15000; /* 15 us */ tp->coalesce = 15000; /* 15 us */

View file

@ -23,7 +23,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
--- a/drivers/net/phy/mxl-gpy.c --- a/drivers/net/phy/mxl-gpy.c
+++ b/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/bitfield.h>
#include <linux/hwmon.h> #include <linux/hwmon.h>
#include <linux/mutex.h> #include <linux/mutex.h>
@ -31,7 +31,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
#include <linux/phy.h> #include <linux/phy.h>
#include <linux/polynomial.h> #include <linux/polynomial.h>
#include <linux/netdevice.h> #include <linux/netdevice.h>
@@ -30,6 +31,7 @@ @@ -33,6 +34,7 @@
#define PHY_MIISTAT 0x18 /* MII state */ #define PHY_MIISTAT 0x18 /* MII state */
#define PHY_IMASK 0x19 /* interrupt mask */ #define PHY_IMASK 0x19 /* interrupt mask */
#define PHY_ISTAT 0x1A /* interrupt status */ #define PHY_ISTAT 0x1A /* interrupt status */
@ -39,7 +39,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
#define PHY_FWV 0x1E /* firmware version */ #define PHY_FWV 0x1E /* firmware version */
#define PHY_MIISTAT_SPD_MASK GENMASK(2, 0) #define PHY_MIISTAT_SPD_MASK GENMASK(2, 0)
@@ -53,10 +55,15 @@ @@ -56,10 +58,15 @@
PHY_IMASK_ADSC | \ PHY_IMASK_ADSC | \
PHY_IMASK_ANC) PHY_IMASK_ANC)
@ -55,9 +55,9 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
/* SGMII */ /* SGMII */
#define VSPEC1_SGMII_CTRL 0x08 #define VSPEC1_SGMII_CTRL 0x08
#define VSPEC1_SGMII_CTRL_ANEN BIT(12) /* Aneg enable */ #define VSPEC1_SGMII_CTRL_ANEN BIT(12) /* Aneg enable */
@@ -80,6 +87,31 @@ static const struct { @@ -241,6 +248,31 @@ out:
{9, 0x73}, return ret;
}; }
+static int gpy_led_write(struct phy_device *phydev) +static int gpy_led_write(struct phy_device *phydev)
+{ +{
@ -87,7 +87,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
static int gpy_config_init(struct phy_device *phydev) static int gpy_config_init(struct phy_device *phydev)
{ {
int ret; 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 */ /* Clear all pending interrupts */
ret = phy_read(phydev, PHY_ISTAT); ret = phy_read(phydev, PHY_ISTAT);
@ -98,4 +98,4 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
+ return gpy_led_write(phydev); + return gpy_led_write(phydev);
} }
static int gpy_probe(struct phy_device *phydev) static bool gpy_has_broken_mdint(struct phy_device *phydev)

View file

@ -78,7 +78,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
netif_napi_del(&bgmac->napi); netif_napi_del(&bgmac->napi);
--- a/drivers/net/ethernet/broadcom/bgmac.h --- a/drivers/net/ethernet/broadcom/bgmac.h
+++ b/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_CC4_IF_SW_TYPE_RGMII BIT(18)
#define BGMAC_FEAT_CC7_IF_TYPE_RGMII BIT(19) #define BGMAC_FEAT_CC7_IF_TYPE_RGMII BIT(19)
#define BGMAC_FEAT_IDM_MASK BIT(20) #define BGMAC_FEAT_IDM_MASK BIT(20)
@ -86,7 +86,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
struct bgmac_slot_info { struct bgmac_slot_info {
union { union {
@@ -497,6 +498,9 @@ struct bgmac { @@ -495,6 +496,9 @@ struct bgmac {
void (*cmn_maskset32)(struct bgmac *bgmac, u16 offset, u32 mask, void (*cmn_maskset32)(struct bgmac *bgmac, u16 offset, u32 mask,
u32 set); u32 set);
int (*phy_connect)(struct bgmac *bgmac); int (*phy_connect)(struct bgmac *bgmac);

View file

@ -10,7 +10,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
--- a/drivers/net/usb/qmi_wwan.c --- a/drivers/net/usb/qmi_wwan.c
+++ b/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, 0x0620)}, /* Quectel EM160R-GL */
{QMI_MATCH_FF_FF_FF(0x2c7c, 0x0800)}, /* Quectel RM500Q-GL */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0800)}, /* Quectel RM500Q-GL */
{QMI_MATCH_FF_FF_FF(0x2c7c, 0x0801)}, /* Quectel RM520N */ {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 #define QUECTEL_VENDOR_ID 0x2c7c
/* These Quectel products use Quectel's vendor ID */ /* These Quectel products use Quectel's vendor ID */
@@ -1133,6 +1135,11 @@ static const struct usb_device_id option @@ -1169,6 +1171,11 @@ static const struct usb_device_id option
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) }, .driver_info = ZLP },
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
.driver_info = RSVD(4) }, .driver_info = RSVD(4) },
+ /* Meiglink products using Qualcomm vendor ID */ + /* Meiglink products using Qualcomm vendor ID */

View file

@ -26,17 +26,17 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/net/phy/sfp.c --- a/drivers/net/phy/sfp.c
+++ b/drivers/net/phy/sfp.c +++ b/drivers/net/phy/sfp.c
@@ -393,6 +393,9 @@ static const struct sfp_quirk sfp_quirks @@ -404,6 +404,9 @@ static const struct sfp_quirk sfp_quirks
// their EEPROM
SFP_QUIRK("HUAWEI", "MA5671A", sfp_quirk_2500basex, SFP_QUIRK("HUAWEI", "MA5671A", sfp_quirk_2500basex,
sfp_fixup_ignore_tx_fault), sfp_fixup_ignore_tx_fault),
+
+ // OEM SFP-GE-T is 1000Base-T module + // OEM SFP-GE-T is 1000Base-T module
+ SFP_QUIRK_F("OEM", "SFP-GE-T", sfp_fixup_ignore_tx_fault), + SFP_QUIRK_F("OEM", "SFP-GE-T", sfp_fixup_ignore_tx_fault),
+
// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report // Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
// 2500MBd NRZ in their EEPROM // 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. * or t_start_up, so assume there is a fault.
*/ */
sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT, sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
@ -45,8 +45,8 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ (sfp->sm_fault_retries == N_FAULT_INIT)); + (sfp->sm_fault_retries == N_FAULT_INIT));
} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) { } else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
init_done: init_done:
sfp->sm_phy_retries = R_PHY_RETRY; /* Create mdiobus and start trying for PHY */
@@ -2535,10 +2541,12 @@ static void sfp_check_state(struct sfp * @@ -2563,10 +2567,12 @@ static void sfp_check_state(struct sfp *
mutex_lock(&sfp->st_mutex); mutex_lock(&sfp->st_mutex);
state = sfp_get_state(sfp); state = sfp_get_state(sfp);
changed = state ^ sfp->state; changed = state ^ sfp->state;

View file

@ -15,7 +15,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
#include "gpiolib.h" #include "gpiolib.h"
#include "gpiolib-of.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 else
gc->of_node = gdev->dev.of_node; gc->of_node = gdev->dev.of_node;
} }
@ -105,7 +105,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
{ {
--- a/include/linux/gpio/consumer.h --- a/include/linux/gpio/consumer.h
+++ b/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) #if IS_ENABLED(CONFIG_GPIOLIB) && IS_ENABLED(CONFIG_GPIO_SYSFS)
@ -113,7 +113,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
int gpiod_export(struct gpio_desc *desc, bool direction_may_change); int gpiod_export(struct gpio_desc *desc, bool direction_may_change);
int gpiod_export_link(struct device *dev, const char *name, int gpiod_export_link(struct device *dev, const char *name,
struct gpio_desc *desc); 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 */ #else /* CONFIG_GPIOLIB && CONFIG_GPIO_SYSFS */
@ -129,7 +129,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
{ {
--- a/drivers/gpio/gpiolib-sysfs.c --- a/drivers/gpio/gpiolib-sysfs.c
+++ b/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. * Returns zero on success, else an error.
*/ */
@ -138,7 +138,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
{ {
struct gpio_chip *chip; struct gpio_chip *chip;
struct gpio_device *gdev; 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); offset = gpio_chip_hwgpio(desc);
if (chip->names && chip->names[offset]) if (chip->names && chip->names[offset])
ioname = chip->names[offset]; ioname = chip->names[offset];
@ -147,7 +147,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
dev = device_create_with_groups(&gpio_class, &gdev->dev, dev = device_create_with_groups(&gpio_class, &gdev->dev,
MKDEV(0, 0), data, gpio_groups, 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); gpiod_dbg(desc, "%s: status %d\n", __func__, status);
return status; return status;
} }

View file

@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
help help
--- a/net/core/Makefile --- a/net/core/Makefile
+++ b/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 \ obj-y += dev.o dev_addr_lists.o dst.o netevent.o \
neighbour.o rtnetlink.o utils.o link_watch.o filter.o \ neighbour.o rtnetlink.o utils.o link_watch.o filter.o \
@ -52,15 +52,15 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/uaccess.h> #include <linux/uaccess.h>
@@ -143,6 +144,7 @@ @@ -145,6 +146,7 @@
static DEFINE_MUTEX(proto_list_mutex); static DEFINE_MUTEX(proto_list_mutex);
static LIST_HEAD(proto_list); static LIST_HEAD(proto_list);
+DEFINE_COOKIE(sock_cookie); +DEFINE_COOKIE(sock_cookie);
static void sock_inuse_add(struct net *net, int val); static void sock_def_write_space_wfree(struct sock *sk);
static void sock_def_write_space(struct sock *sk);
@@ -545,6 +547,18 @@ discard_and_relse: @@ -582,6 +584,18 @@ discard_and_relse:
} }
EXPORT_SYMBOL(__sk_receive_skb); EXPORT_SYMBOL(__sk_receive_skb);
@ -79,7 +79,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
INDIRECT_CALLABLE_DECLARE(struct dst_entry *ip6_dst_check(struct dst_entry *, INDIRECT_CALLABLE_DECLARE(struct dst_entry *ip6_dst_check(struct dst_entry *,
u32)); u32));
INDIRECT_CALLABLE_DECLARE(struct dst_entry *ipv4_dst_check(struct dst_entry *, 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)) if (likely(sk->sk_net_refcnt))
sock_inuse_add(sock_net(sk), -1); sock_inuse_add(sock_net(sk), -1);
@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/sock_diag.c --- a/net/core/sock_diag.c
+++ b/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/tcp.h>
#include <linux/workqueue.h> #include <linux/workqueue.h>
#include <linux/nospec.h> #include <linux/nospec.h>
@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/inet_diag.h> #include <linux/inet_diag.h>
#include <linux/sock_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 DEFINE_MUTEX(sock_diag_table_mutex);
static struct workqueue_struct *broadcast_wq; static struct workqueue_struct *broadcast_wq;
@ -124,7 +124,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
u64 res; u64 res;
--- a/net/ipv4/Kconfig --- a/net/ipv4/Kconfig
+++ b/net/ipv4/Kconfig +++ b/net/ipv4/Kconfig
@@ -424,6 +424,7 @@ config INET_TUNNEL @@ -423,6 +423,7 @@ config INET_TUNNEL
config INET_DIAG config INET_DIAG
tristate "INET: socket monitoring interface" tristate "INET: socket monitoring interface"

View file

@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/fs/locks.c --- a/fs/locks.c
+++ b/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) static int __init proc_locks_init(void)
{ {
@ -40,7 +40,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
return 0; return 0;
--- a/fs/proc/Kconfig --- a/fs/proc/Kconfig
+++ b/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 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. this interface. For example, rkt is such a piece of software.
@ -66,7 +66,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
--- a/fs/proc/proc_tty.c --- a/fs/proc/proc_tty.c
+++ b/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) void proc_tty_register_driver(struct tty_driver *driver)
{ {
struct proc_dir_entry *ent; struct proc_dir_entry *ent;
@ -78,7 +78,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!driver->driver_name || driver->proc_entry || if (!driver->driver_name || driver->proc_entry ||
!driver->ops->proc_show) !driver->ops->proc_show)
return; 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; struct proc_dir_entry *ent;
@ -88,7 +88,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
ent = driver->proc_entry; ent = driver->proc_entry;
if (!ent) if (!ent)
return; 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) void __init proc_tty_init(void)
{ {
@ -135,7 +135,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
do { \ do { \
--- a/ipc/msg.c --- a/ipc/msg.c
+++ b/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); msg_init_ns(&init_ipc_ns);
@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!pe) if (!pe)
--- a/mm/vmalloc.c --- a/mm/vmalloc.c
+++ b/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) static int __init proc_vmalloc_init(void)
{ {
@ -246,7 +246,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
&vmalloc_op, &vmalloc_op,
--- a/mm/vmstat.c --- a/mm/vmstat.c
+++ b/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(); start_shepherd_timer();
#endif #endif
#ifdef CONFIG_PROC_FS #ifdef CONFIG_PROC_FS
@ -286,7 +286,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
goto err; goto err;
--- a/net/core/net-procfs.c --- a/net/core/net-procfs.c
+++ b/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, if (!proc_create_net("dev", 0444, net->proc_net, &dev_seq_ops,
sizeof(struct seq_net_private))) sizeof(struct seq_net_private)))
goto out; goto out;
@ -301,7 +301,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
sizeof(struct seq_net_private))) sizeof(struct seq_net_private)))
goto out_softnet; 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: out:
return rc; return rc;
out_ptype: out_ptype:
@ -315,7 +315,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
out_dev: out_dev:
remove_proc_entry("dev", net->proc_net); remove_proc_entry("dev", net->proc_net);
goto out; 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); wext_proc_exit(net);
@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/sock.c --- a/net/core/sock.c
+++ b/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) static int __init proto_init(void)
{ {
@ -341,7 +341,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/ipv4/fib_trie.c --- a/net/ipv4/fib_trie.c
+++ b/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) int __net_init fib_proc_init(struct net *net)
{ {
@ -357,7 +357,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
fib_triestat_seq_show, NULL)) fib_triestat_seq_show, NULL))
goto out2; 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; return 0;
out3: out3:
@ -396,7 +396,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
--- a/net/ipv4/route.c --- a/net/ipv4/route.c
+++ b/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) static int __init ip_rt_proc_init(void)
{ {

View file

@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/drivers/base/Kconfig --- a/drivers/base/Kconfig
+++ b/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" source "drivers/base/regmap/Kconfig"
config DMA_SHARED_BUFFER config DMA_SHARED_BUFFER
@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+dma-buf-objs-$(CONFIG_DMABUF_HEAPS_CMA) += cma_heap.o +dma-buf-objs-$(CONFIG_DMABUF_HEAPS_CMA) += cma_heap.o
--- a/drivers/dma-buf/Makefile --- a/drivers/dma-buf/Makefile
+++ b/drivers/dma-buf/Makefile +++ b/drivers/dma-buf/Makefile
@@ -1,18 +1,22 @@ @@ -1,12 +1,14 @@
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
-obj-y := dma-buf.o dma-fence.o dma-fence-array.o dma-fence-chain.o \ -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 +obj-$(CONFIG_DMA_SHARED_BUFFER) := dma-shared-buffer.o
@ -54,8 +54,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
dmabuf_selftests-y := \ dmabuf_selftests-y := \
selftest.o \ selftest.o \
st-dma-fence.o \ @@ -15,4 +17,6 @@ dmabuf_selftests-y := \
st-dma-fence-chain.o \
st-dma-fence-unwrap.o \ st-dma-fence-unwrap.o \
st-dma-resv.o st-dma-resv.o
@ -65,7 +64,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+dma-shared-buffer-objs := $(dma-buf-objs-y) +dma-shared-buffer-objs := $(dma-buf-objs-y)
--- a/drivers/dma-buf/dma-buf.c --- a/drivers/dma-buf/dma-buf.c
+++ b/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); kern_unmount(dma_buf_mnt);
dma_buf_uninit_sysfs_statistics(); dma_buf_uninit_sysfs_statistics();
} }
@ -74,7 +73,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
--- a/kernel/sched/core.c --- a/kernel/sched/core.c
+++ b/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); return try_to_wake_up(p, state, 0);
} }
@ -84,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Perform scheduler related setup for a newly forked process p. * Perform scheduler related setup for a newly forked process p.
--- a/fs/d_path.c --- a/fs/d_path.c
+++ b/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; buffer += buflen - sz;
return memcpy(buffer, temp, sz); return memcpy(buffer, temp, sz);
} }

View file

@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#ifdef CONFIG_UEVENT_HELPER #ifdef CONFIG_UEVENT_HELPER
/* path to the userspace helper executed on an event */ /* path to the userspace helper executed on an event */
extern char uevent_helper[]; 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) __printf(2, 3)
int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...); int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...);

View file

@ -9,7 +9,7 @@ Subject: [PATCH] of/ftd: add device tree cmdline
--- a/drivers/of/fdt.c --- a/drivers/of/fdt.c
+++ b/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); p = of_get_flat_dt_prop(node, "bootargs", &l);
if (p != NULL && l > 0) if (p != NULL && l > 0)
strscpy(cmdline, p, min(l, COMMAND_LINE_SIZE)); 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) + if (p != NULL && l > 0)
+ strlcat(cmdline, p, min_t(int, strlen(cmdline) + (int)l, COMMAND_LINE_SIZE)); + 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

View file

@ -19,7 +19,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
--- a/drivers/base/core.c --- a/drivers/base/core.c
+++ b/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 | \ #define FW_DEVLINK_FLAGS_RPM (FW_DEVLINK_FLAGS_ON | \
DL_FLAG_PM_RUNTIME) DL_FLAG_PM_RUNTIME)