include Config
-VER = 5.10.76
+VER = 5.15.0
ARM_PATCHES = 5.10.76-ipfire1
THISAPP = linux-$(VER)
$(DL_FILE) = $(URL_IPFIRE)/$(DL_FILE)
arm-multi-patches-$(ARM_PATCHES).patch.xz = $(URL_IPFIRE)/arm-multi-patches-$(ARM_PATCHES).patch.xz
-$(DL_FILE)_MD5 = 6d9d29908d48ffee0daab4f6f8d98a65
+$(DL_FILE)_MD5 = dbebca26baeeb943b8cf90ce188a0a39
arm-multi-patches-$(ARM_PATCHES).patch.xz_MD5 = 02a75302a5b4a157e3d67ae62af6b178
install : $(TARGET)
ln -svf linux-$(VER) $(DIR_SRC)/linux
# Layer7-patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.10-layer7.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.15-layer7.patch
# DVB Patches
cd $(DIR_APP) && patch -Np2 < $(DIR_SRC)/src/patches/v4l-dvb_fix_tua6034_pll.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.14_ath_user_regd.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.9.8-iwlwifi-noibss_only_on_radar_chan.patch
- # Fix apu1 led detection with newer bios versions
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.10.16-apu1-led-new-bios.patch
-
# Fix igb and e1000e crash
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-4.14.1-igb-e1000e_fix_lock_at_update_stats.patch
# fix Boot with enabled usercopy hardening
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.9-crypto_testmgr_allocate_buffers_with____GFP_COMP.patch
- # fix gcc plugins with gcc11
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.10.45-fix_gcc_plugins_with_gcc11.patch
-
ifeq "$(BUILD_ARCH)" "armv6l"
# Apply Arm-multiarch kernel patches.
cd $(DIR_APP) && xzcat $(DIR_DL)/arm-multi-patches-$(ARM_PATCHES).patch.xz | patch -Np1
+++ /dev/null
-diff -Naur linux-5.10.16.org/drivers/leds/leds-apu.c linux-5.10.16/drivers/leds/leds-apu.c
---- linux-5.10.16.org/drivers/leds/leds-apu.c 2021-02-13 13:55:19.000000000 +0100
-+++ linux-5.10.16/drivers/leds/leds-apu.c 2021-02-17 09:32:19.154531597 +0100
-@@ -90,6 +90,13 @@
- DMI_MATCH(DMI_PRODUCT_NAME, "APU")
- }
- },
-+ {
-+ .ident = "apu",
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "PC Engines"),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "apu1")
-+ }
-+ },
- {}
- };
- MODULE_DEVICE_TABLE(dmi, apu_led_dmi_table);
-@@ -173,7 +180,8 @@
- int err;
-
- if (!(dmi_match(DMI_SYS_VENDOR, "PC Engines") &&
-- dmi_match(DMI_PRODUCT_NAME, "APU"))) {
-+ dmi_match(DMI_PRODUCT_NAME, "APU")||
-+ dmi_match(DMI_PRODUCT_NAME, "apu1"))) {
- pr_err("No PC Engines APUv1 board detected. For APUv2,3 support, enable CONFIG_PCENGINES_APU2\n");
- return -ENODEV;
- }
+++ /dev/null
-diff -Naur linux-5.10.45.org/scripts/gcc-plugins/Makefile linux-5.10.45/scripts/gcc-plugins/Makefile
---- linux-5.10.45.org/scripts/gcc-plugins/Makefile 2021-06-18 10:00:06.000000000 +0200
-+++ linux-5.10.45/scripts/gcc-plugins/Makefile 2021-06-22 13:36:30.108527243 +0200
-@@ -22,9 +22,9 @@
- GCC_PLUGINS_DIR = $(shell $(CC) -print-file-name=plugin)
-
- plugin_cxxflags = -Wp,-MMD,$(depfile) $(KBUILD_HOSTCXXFLAGS) -fPIC \
-- -I $(GCC_PLUGINS_DIR)/include -I $(obj) -std=gnu++98 \
-+ -I $(GCC_PLUGINS_DIR)/include -I $(obj) -std=gnu++11 \
- -fno-rtti -fno-exceptions -fasynchronous-unwind-tables \
-- -ggdb -Wno-narrowing -Wno-unused-variable -Wno-c++11-compat \
-+ -ggdb -Wno-narrowing -Wno-unused-variable \
- -Wno-format-diag
-
- plugin_ldflags = -shared
-diff -Naur linux-5.10.45.org/scripts/gcc-plugin.sh linux-5.10.45/scripts/gcc-plugin.sh
---- linux-5.10.45.org/scripts/gcc-plugin.sh 2021-06-18 10:00:06.000000000 +0200
-+++ linux-5.10.45/scripts/gcc-plugin.sh 2021-06-22 17:24:20.138602697 +0200
-@@ -8,7 +8,7 @@
- gccplugins_dir=$($* -print-file-name=plugin)
-
- # we need a c++ compiler that supports the designated initializer GNU extension
--$HOSTCC -c -x c++ -std=gnu++98 - -fsyntax-only -I $srctree/gcc-plugins -I $gccplugins_dir/include 2>/dev/null <<EOF
-+$HOSTCC -c -x c++ -std=gnu++11 - -fsyntax-only -I $srctree/gcc-plugins -I $gccplugins_dir/include 2>/dev/null <<EOF
- #include "gcc-common.h"
- class test {
- public:
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
-index a828cf99c521..6d97e4d8623f 100644
+index 841e2f0f5240..636e5abedb08 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -757,6 +757,9 @@ struct sk_buff {
+@@ -768,6 +768,9 @@ struct sk_buff {
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
unsigned long _nfct;
unsigned int len,
data_len;
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h
-index 439379ca9ffa..9cab502ff226 100644
+index cc663c68ddc4..55655f5ee4f2 100644
--- a/include/net/netfilter/nf_conntrack.h
+++ b/include/net/netfilter/nf_conntrack.h
-@@ -103,6 +103,23 @@ struct nf_conn {
+@@ -117,6 +117,23 @@ struct nf_conn {
/* Extensions */
struct nf_ct_ext *ext;
+
+#endif /* _XT_LAYER7_H */
diff --git a/net/netfilter/Kconfig b/net/netfilter/Kconfig
-index 52370211e46b..734b4d641469 100644
+index 92a747896f80..0152bdbc338e 100644
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -1355,6 +1355,26 @@ config NETFILTER_XT_MATCH_L2TP
+@@ -1389,6 +1389,26 @@ config NETFILTER_XT_MATCH_L2TP
To compile it as a module, choose M here. If unsure, say N.
tristate '"length" match support'
depends on NETFILTER_ADVANCED
diff --git a/net/netfilter/Makefile b/net/netfilter/Makefile
-index 0e0ded87e27b..6c383006af4e 100644
+index aab20e575ecd..0dfd2c3df9e1 100644
--- a/net/netfilter/Makefile
+++ b/net/netfilter/Makefile
-@@ -203,6 +203,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT) += xt_recent.o
+@@ -201,6 +201,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT) += xt_recent.o
obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o
obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
obj-$(CONFIG_NETFILTER_XT_MATCH_STRING) += xt_string.o
obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
-index 234b7cab37c3..05731ba4f5ff 100644
+index 770a63103c7a..5951aedc010a 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
-@@ -617,6 +617,11 @@ destroy_conntrack(struct nf_conntrack *nfct)
+@@ -636,6 +636,11 @@ destroy_conntrack(struct nf_conntrack *nfct)
*/
nf_ct_remove_expectations(ct);
local_bh_enable();
diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c
-index 46c5557c1fec..6ef99967ae05 100644
+index 80f675d884b2..3e7c0a85bdcf 100644
--- a/net/netfilter/nf_conntrack_standalone.c
+++ b/net/netfilter/nf_conntrack_standalone.c
-@@ -366,6 +366,11 @@ static int ct_seq_show(struct seq_file *s, void *v)
+@@ -370,6 +370,11 @@ static int ct_seq_show(struct seq_file *s, void *v)
ct_show_zone(s, ct, NF_CT_DEFAULT_ZONE_DIR);
ct_show_delta_time(s, ct);