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
+++ 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@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@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@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@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@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@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@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@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@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@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@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@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@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@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);

View File

@ -19,7 +19,7 @@ Signed-off-by: David Bauer <mail@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@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:

View File

@ -3039,7 +3039,7 @@ Signed-off-by: Florian Fainelli <f.fainelli@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@gmail.com>
+#include "elf.h"
+#endif
#include "list.h"
#include "elfconfig.h"

View File

@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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)

View File

@ -12,7 +12,7 @@ Signed-off-by: Gabor Juhos <juhosg@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@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

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. */
#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@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@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@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@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@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@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@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 $@

View File

@ -23,7 +23,7 @@ Signed-off-by: Imre Kaloz <kaloz@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@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 > $@

View File

@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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'

View File

@ -16,8 +16,8 @@ Signed-off-by: John Crispin <john@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@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@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@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@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@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@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@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@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@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

View File

@ -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

View File

@ -125,7 +125,7 @@ Signed-off-by: Felix Fietkau <nbd@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);

View File

@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@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

View File

@ -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

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
--- 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/

View File

@ -16,7 +16,7 @@ Signed-off-by: Alexandros C. Couloumbis <alex@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))

View File

@ -25,7 +25,7 @@ Signed-off-by: Daniel Golle <daniel@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@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@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);
}

View File

@ -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)

View File

@ -12,7 +12,7 @@ Signed-off-by: Rafał Miłecki <rafal@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);

View File

@ -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

View File

@ -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

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
+++ 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@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;
};

View File

@ -8,7 +8,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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@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@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@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);

View File

@ -11,7 +11,7 @@ Signed-off-by: Imre Kaloz <kaloz@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

View File

@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd@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;

View File

@ -14,7 +14,7 @@ Signed-off-by: Rui Salvaterra <rsalvaterra@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

View File

@ -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;

View File

@ -9,7 +9,7 @@ Signed-off-by: Birger Koblitz <git@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@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@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@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@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@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) },

View File

@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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@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@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@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@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@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@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@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;

View File

@ -15,7 +15,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@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@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@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@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@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@nxp.com>
+ { 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
+++ 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);

View File

@ -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) },
{ }
};

View File

@ -12,7 +12,7 @@ Signed-off-by: Daniel Golle <daniel@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@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@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@makrotopia.org>
+ { 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/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@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@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@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 */

View File

@ -23,7 +23,7 @@ Signed-off-by: David Bauer <mail@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@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@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@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@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@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)

View File

@ -78,7 +78,7 @@ Signed-off-by: Hauke Mehrtens <hauke@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@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);

View File

@ -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 */

View File

@ -26,17 +26,17 @@ Signed-off-by: Daniel Golle <daniel@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@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;

View File

@ -15,7 +15,7 @@ Signed-off-by: John Crispin <blogic@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@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@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@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@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@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;
}

View File

@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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@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@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@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@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"

View File

@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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)
{

View File

@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd@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@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@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@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@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@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);
}

View File

@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd@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, ...);

View File

@ -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

View File

@ -19,7 +19,7 @@ Signed-off-by: Rafał Miłecki <rafal@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)