All of lore.kernel.org
 help / color / mirror / Atom feed
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.