summaryrefslogtreecommitdiff
path: root/meta-sunxi-extra
diff options
context:
space:
mode:
Diffstat (limited to 'meta-sunxi-extra')
-rw-r--r--meta-sunxi-extra/conf/layer.conf5
-rw-r--r--meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/files/netfilter-legacy-podman.cfg15
-rw-r--r--meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/linux-mainline_%.bbappend7
-rw-r--r--meta-sunxi-extra/recipes-kernel/linux/linux-mainline_%.bbappend5
4 files changed, 32 insertions, 0 deletions
diff --git a/meta-sunxi-extra/conf/layer.conf b/meta-sunxi-extra/conf/layer.conf
index 9f13c06..ba85286 100644
--- a/meta-sunxi-extra/conf/layer.conf
+++ b/meta-sunxi-extra/conf/layer.conf
@@ -12,3 +12,8 @@ BBFILE_PRIORITY_sunxi-extra-layer = "11"
LAYERDEPENDS_sunxi-extra-layer += "sunxi"
LAYERSERIES_COMPAT_sunxi-extra-layer = "wrynose"
+
+BBFILES_DYNAMIC += " \
+ virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/recipes-*/*/*.bb \
+ virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/recipes-*/*/*.bbappend \
+"
diff --git a/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/files/netfilter-legacy-podman.cfg b/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/files/netfilter-legacy-podman.cfg
new file mode 100644
index 0000000..7e06214
--- /dev/null
+++ b/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/files/netfilter-legacy-podman.cfg
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: MIT
+#
+# Kernel 6.18+ split legacy iptables setsockopt support out of
+# CONFIG_IP_NF_IPTABLES into CONFIG_IP_NF_IPTABLES_LEGACY, gated by
+# CONFIG_NETFILTER_XTABLES_LEGACY. Podman/netavark's iptables backend
+# needs this chain enabled or `iptables -t nat` fails with
+# "Table does not exist" even when CONFIG_NF_NAT is set.
+#
+# Supplements features/netfilter/netfilter.cfg from yocto-kernel-cache,
+# which predates this split.
+
+CONFIG_NETFILTER_XTABLES_LEGACY=y
+CONFIG_IP_NF_IPTABLES_LEGACY=m
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_BRIDGE_NETFILTER=m
diff --git a/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/linux-mainline_%.bbappend b/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/linux-mainline_%.bbappend
new file mode 100644
index 0000000..57b2be0
--- /dev/null
+++ b/meta-sunxi-extra/dynamic-layers/virtualization-layer/recipes-kernel/linux/linux-mainline_%.bbappend
@@ -0,0 +1,7 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
+
+SRC_URI:append = " file://netfilter-legacy-podman.cfg"
+
+KERNEL_FEATURES:append = " features/namespaces/namespaces.cfg"
+KERNEL_FEATURES:append = " features/cgroups/cgroups.cfg"
+KERNEL_FEATURES:append = " features/netfilter/netfilter.cfg"
diff --git a/meta-sunxi-extra/recipes-kernel/linux/linux-mainline_%.bbappend b/meta-sunxi-extra/recipes-kernel/linux/linux-mainline_%.bbappend
new file mode 100644
index 0000000..7ce2f20
--- /dev/null
+++ b/meta-sunxi-extra/recipes-kernel/linux/linux-mainline_%.bbappend
@@ -0,0 +1,5 @@
+SRCREV_meta ?= "24949c3ef490d79a73a821f688efdc2f562fc851"
+
+SRC_URI:append = " git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.18;destsuffix=${KMETA};protocol=https"
+
+KMETA = "kernel-meta"