From: bruce.ashfield@gmail.com
To: richard.purdie@linuxfoundation.org
Cc: openembedded-core@lists.openembedded.org
Subject: [PATCH 01/14] linux-yocto: introduce 6.17 reference kernels
Date: Thu, 30 Oct 2025 13:12:14 -0400 [thread overview]
Message-ID: <3e6a1cf86202fa82c63fbd36f10acb1f8552d810.1761844161.git.bruce.ashfield@gmail.com> (raw)
In-Reply-To: <cover.1761844161.git.bruce.ashfield@gmail.com>
From: Bruce Ashfield <bruce.ashfield@gmail.com>
The 6.17 kernel went through quite a bit of testing via
linux-yocto-dev, so it is a relatively well understood release.
These recipes introduce it as a fully tested reference with the
potential to replace the EOL 6.16 refs.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---
.../linux/linux-yocto-rt_6.17.bb | 48 +++++++++++
.../linux/linux-yocto-tiny_6.17.bb | 33 ++++++++
meta/recipes-kernel/linux/linux-yocto_6.17.bb | 79 +++++++++++++++++++
3 files changed, 160 insertions(+)
create mode 100644 meta/recipes-kernel/linux/linux-yocto-rt_6.17.bb
create mode 100644 meta/recipes-kernel/linux/linux-yocto-tiny_6.17.bb
create mode 100644 meta/recipes-kernel/linux/linux-yocto_6.17.bb
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_6.17.bb b/meta/recipes-kernel/linux/linux-yocto-rt_6.17.bb
new file mode 100644
index 0000000000..a8dd6bfb2b
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_6.17.bb
@@ -0,0 +1,48 @@
+KBRANCH ?= "v6.17/standard/preempt-rt/base"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# CVE exclusions
+include recipes-kernel/linux/cve-exclusion_6.17.inc
+
+# Skip processing of this recipe if it is not explicitly specified as the
+# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
+# to build multiple virtual/kernel providers, e.g. as dependency of
+# core-image-rt-sdk, core-image-rt.
+python () {
+ if d.getVar("KERNEL_PACKAGE_NAME") == "kernel" and d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-yocto-rt":
+ raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
+}
+
+SRCREV_machine ?= "268abc460d21fe8510bc8a521f3ea887f2bbeef0"
+SRCREV_meta ?= "07eb16989b3f0b4fdfd433e602d70d0e0538495a"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.17;destsuffix=${KMETA};protocol=https"
+
+LINUX_VERSION ?= "6.17.5"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
+DEPENDS += "openssl-native util-linux-native"
+
+PV = "${LINUX_VERSION}+git"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "1"
+
+LINUX_KERNEL_TYPE = "preempt-rt"
+
+COMPATIBLE_MACHINE = "^(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)$"
+
+KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb"
+
+# Functionality flags
+KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall = " cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86 = " cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64 = " cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}"
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_6.17.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_6.17.bb
new file mode 100644
index 0000000000..989b114769
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto-tiny_6.17.bb
@@ -0,0 +1,33 @@
+KBRANCH ?= "v6.17/standard/tiny/base"
+
+LINUX_KERNEL_TYPE = "tiny"
+KCONFIG_MODE = "--allnoconfig"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# CVE exclusions
+include recipes-kernel/linux/cve-exclusion_6.17.inc
+
+LINUX_VERSION ?= "6.17.5"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
+DEPENDS += "openssl-native util-linux-native"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "2"
+
+SRCREV_machine ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_meta ?= "07eb16989b3f0b4fdfd433e602d70d0e0538495a"
+
+PV = "${LINUX_VERSION}+git"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.17;destsuffix=${KMETA};protocol=https"
+
+COMPATIBLE_MACHINE = "^(qemux86|qemux86-64|qemuarm64|qemuarm|qemuarmv5)$"
+
+# Functionality flags
+KERNEL_FEATURES:append:qemuall = " cfg/virtio.scc cfg/fs/ext4.scc"
+
+KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb"
diff --git a/meta/recipes-kernel/linux/linux-yocto_6.17.bb b/meta/recipes-kernel/linux/linux-yocto_6.17.bb
new file mode 100644
index 0000000000..399dfa171b
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto_6.17.bb
@@ -0,0 +1,79 @@
+KBRANCH ?= "v6.17/standard/base"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# CVE exclusions
+include recipes-kernel/linux/cve-exclusion.inc
+include recipes-kernel/linux/cve-exclusion_6.17.inc
+
+# board specific branches
+KBRANCH:qemuarm ?= "v6.17/standard/arm-versatile-926ejs"
+KBRANCH:qemuarm64 ?= "v6.17/standard/base"
+KBRANCH:qemumips ?= "v6.17/standard/mti-malta32"
+KBRANCH:qemuppc ?= "v6.17/standard/qemuppc"
+KBRANCH:qemuriscv64 ?= "v6.17/standard/base"
+KBRANCH:qemuriscv32 ?= "v6.17/standard/base"
+KBRANCH:qemux86 ?= "v6.17/standard/base"
+KBRANCH:qemux86-64 ?= "v6.17/standard/base"
+KBRANCH:qemuloongarch64 ?= "v6.17/standard/base"
+KBRANCH:qemumips64 ?= "v6.17/standard/mti-malta64"
+
+SRCREV_machine:qemuarm ?= "23c78022fc97ea5ebc19ea8fb86d324c23a6fbaa"
+SRCREV_machine:qemuarm64 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemuloongarch64 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemumips ?= "62ea92a539f58803a222be98b81118403074206e"
+SRCREV_machine:qemuppc ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemuriscv64 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemuriscv32 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemux86 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemux86-64 ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_machine:qemumips64 ?= "9fb4ff0187c85426f21fd40d4c61b742800f65c4"
+SRCREV_machine ?= "d76cb43db46c5d45e25df34484c87f5e545bf4c5"
+SRCREV_meta ?= "07eb16989b3f0b4fdfd433e602d70d0e0538495a"
+
+# set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll
+# get the <version>/base branch, which is pure upstream -stable, and the same
+# meta SRCREV as the linux-yocto-standard builds. Select your version using the
+# normal PREFERRED_VERSION settings.
+BBCLASSEXTEND = "devupstream:target"
+SRCREV_machine:class-devupstream ?= "99efbd4259f384718dd16a7423d8e944396b65d4"
+PN:class-devupstream = "linux-yocto-upstream"
+KBRANCH:class-devupstream = "v6.17/base"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH};protocol=https \
+ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.17;destsuffix=${KMETA};protocol=https"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+LINUX_VERSION ?= "6.17.5"
+
+PV = "${LINUX_VERSION}+git"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "1"
+
+KERNEL_DEVICETREE:qemuarmv5 = "arm/versatile-pb.dtb"
+
+COMPATIBLE_MACHINE = "^(qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32|qemuloongarch64)$"
+
+# Functionality flags
+KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall = " cfg/virtio.scc features/drm-bochs/drm-bochs.scc cfg/net/mdio.scc"
+KERNEL_FEATURES:append:qemux86 = " cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64 = " cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc features/nf_tables/nft_test.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("KERNEL_DEBUG", "True", " features/reproducibility/reproducibility.scc features/debug/debug-btf.scc", "", d)}"
+# libteam ptests from meta-oe needs it
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/net/team/team.scc", "", d)}"
+# openl2tp tests from meta-networking needs it
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " cgl/cfg/net/l2tp.scc", "", d)}"
+KERNEL_FEATURES:append:powerpc = " arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64 = " arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64le = " arch/powerpc/powerpc-debug.scc"
+# Do not add debug info for riscv32, it fails during depmod
+# ERROR: modpost: __ex_table+0x17a4 references non-executable section '.debug_loclists'
+# Check again during next major version upgrade
+KERNEL_FEATURES:remove:riscv32 = "features/debug/debug-kernel.scc"
+INSANE_SKIP:kernel-vmlinux:qemuppc64 = "textrel"
--
2.39.2
next prev parent reply other threads:[~2025-10-30 17:12 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-30 17:12 [PATCH 00/14] kernel-yocto: consolidated pull request bruce.ashfield
2025-10-30 17:12 ` bruce.ashfield [this message]
2025-10-30 17:12 ` [PATCH 02/14] linux-yocto/6.17: update CVE exclusions (6.17.5) bruce.ashfield
2025-10-30 17:12 ` [PATCH 03/14] linux-yocto/6.17: fix qemuarm config audit warning bruce.ashfield
2025-10-30 17:12 ` [PATCH 04/14] linux-yocto/6.17: unify qemumips (malta) branches bruce.ashfield
2025-10-30 17:12 ` [PATCH 05/14] linux-yocto/6.17: fix rdinit boot warning bruce.ashfield
2025-10-30 17:12 ` [PATCH 06/14] linux-yocto/6.17: update to v6.17.6 bruce.ashfield
2025-10-30 17:12 ` [PATCH 07/14] linux-yocto/6.17: update CVE exclusions (6.17.6) bruce.ashfield
2025-10-30 17:12 ` [PATCH 08/14] linux-yocto/6.12: update to v6.12.53 bruce.ashfield
2025-10-30 17:12 ` [PATCH 09/14] linux-yocto/6.12: update CVE exclusions (6.12.53) bruce.ashfield
2025-10-30 17:12 ` [PATCH 10/14] linux-yocto/6.12: update to v6.12.55 bruce.ashfield
2025-10-30 17:12 ` [PATCH 11/14] linux-yocto/6.12: update CVE exclusions (6.12.55) bruce.ashfield
2025-10-30 17:12 ` [PATCH 12/14] poky: make linux-yocto 6.17 the preferred version bruce.ashfield
2025-10-31 7:34 ` [OE-core] " Mikko Rapeli
2025-10-31 12:44 ` Bruce Ashfield
2025-10-30 17:12 ` [PATCH 13/14] yocto-bsp/6.16: specify genericarm64 SRCREV bruce.ashfield
2025-10-31 7:38 ` [OE-core] " Mikko Rapeli
2025-10-30 17:12 ` [PATCH 14/14] yocto-bsp/6.17: introduce kernel bbappend bruce.ashfield
2025-10-31 16:41 ` [OE-core] [PATCH 00/14] kernel-yocto: consolidated pull request Joao Marcos Costa
2025-10-31 16:46 ` Bruce Ashfield
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3e6a1cf86202fa82c63fbd36f10acb1f8552d810.1761844161.git.bruce.ashfield@gmail.com \
--to=bruce.ashfield@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox