From: Trevor Woerner <twoerner@gmail.com>
To: yocto-patches@lists.yoctoproject.org
Subject: [meta-rockchip][PATCH v3] kernel: add config fragment for lttng-modules prerequisites
Date: Sun, 25 Oct 2026 17:16:48 -0400 [thread overview]
Message-ID: <20261025211648.2608396-1-twoerner@gmail.com> (raw)
The machines in this layer have no BSP description in yocto-kernel-cache
and build from an in-tree defconfig via KBUILD_DEFCONFIG, so the
standard kernel type's configuration never reaches them. Neither the arm
nor the arm64 defconfig enables what lttng-modules needs: kprobes is a
hard compile failure, and without the tracing infrastructure the build
silently produces no modules at all.
Ship the missing subset as a fragment in the layer's own kmeta, so it
resolves for any recipe here rather than only for ones that fetch the
kernel cache.
AI-Generated: codex/claude-opus 5 (xhigh)
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
---
changes in v3:
- move the fragment into the layer's own kmeta and reference it from
KERNEL_FEATURES, rather than adding a bare .cfg to SRC_URI, so it sits
with the layer's other kernel metadata and can be named
- enable CONFIG_FTRACE_SYSCALLS, and justify the symbol set by what
ktypes/standard already gives a cache-described BSP (features/kprobes,
features/ftrace) rather than deriving it from first principles
- leave CONFIG_KALLSYMS_ALL unset: ktypes/base sets it to n, so the
lttng writeback probe is dropped everywhere and this layer should not
diverge
- considered yocto-cfg-fragments (as meta-virtualization does) and
CONFIG_ENABLE_DEFAULT_TRACERS as a lighter route to tracepoints; both
were dropped in favour of matching the standard kernel type, which
every other linux-yocto BSP already gets
---
recipes-kernel/linux/linux-rockchip.inc | 1 +
.../rockchip-kmeta/bsp/rockchip/lttng.cfg | 16 ++++++++++++++++
.../rockchip-kmeta/bsp/rockchip/lttng.scc | 1 +
3 files changed, 18 insertions(+)
create mode 100644 recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.cfg
create mode 100644 recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.scc
diff --git a/recipes-kernel/linux/linux-rockchip.inc b/recipes-kernel/linux/linux-rockchip.inc
index 6c62e849834c..b87cb7a14bf8 100644
--- a/recipes-kernel/linux/linux-rockchip.inc
+++ b/recipes-kernel/linux/linux-rockchip.inc
@@ -34,5 +34,6 @@ COMPATIBLE_MACHINE:soquartz = "soquartz"
SRC_URI:append:rockchip = " file://rockchip-kmeta;type=kmeta;name=rockchip-kmeta;destsuffix=rockchip-kmeta"
SRC_URI:append:nanopi-r4s = " file://realtek-r8169.cfg"
+KERNEL_FEATURES:append:rockchip = " bsp/rockchip/lttng.scc"
KERNEL_FEATURES:append:rockchip:arm = " bsp/rockchip/remove-non-rockchip-arch-arm.scc"
KERNEL_FEATURES:append:rockchip:aarch64 = " bsp/rockchip/remove-non-rockchip-arch-arm64.scc"
diff --git a/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.cfg b/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.cfg
new file mode 100644
index 000000000000..c92c62be2b8b
--- /dev/null
+++ b/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.cfg
@@ -0,0 +1,16 @@
+# Prerequisites for building lttng-modules.
+#
+# These symbols are what ktypes/standard gives every BSP that has a
+# yocto-kernel-cache description, via features/kprobes and
+# features/ftrace, trimmed to what lttng-modules uses: kprobes is a hard
+# compile requirement (src/wrapper/kallsyms.c), and the tracing
+# infrastructure is what it traces with - without it the build produces
+# no modules at all rather than failing.
+#
+# CONFIG_KALLSYMS_ALL is deliberately absent: ktypes/base sets it to n,
+# so the lttng "writeback" probe is dropped on every linux-yocto BSP and
+# this layer has no reason to diverge.
+CONFIG_KPROBES=y
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FTRACE_SYSCALLS=y
diff --git a/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.scc b/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.scc
new file mode 100644
index 000000000000..2d0412541c81
--- /dev/null
+++ b/recipes-kernel/linux/linux-rockchip/rockchip-kmeta/bsp/rockchip/lttng.scc
@@ -0,0 +1 @@
+kconf non-hardware lttng.cfg
--
2.50.0.173.g8b6f19ccfc3a
reply other threads:[~2026-10-25 21:16 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20261025211648.2608396-1-twoerner@gmail.com \
--to=twoerner@gmail.com \
--cc=yocto-patches@lists.yoctoproject.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.