From: Kris Van Hees <kris.van.hees@oracle.com>
To: Eugene Loh <eugene.loh@oracle.com>
Cc: Kris Van Hees <kris.van.hees@oracle.com>,
dtrace@lists.linux.dev, dtrace-devel@oss.oracle.com
Subject: Re: [PATCH] test: skip when /proc/kallmodsyms is not present
Date: Mon, 9 Feb 2026 14:04:52 -0500 [thread overview]
Message-ID: <aYov1BfhUaIuEAg6@oracle.com> (raw)
In-Reply-To: <9eec5a13-12b6-8866-a563-022bb94f40d5@oracle.com>
On Mon, Feb 09, 2026 at 01:55:03PM -0500, Eugene Loh wrote:
> I'm rusty on this stuff, but maybe you can help me out. What happens with
> the test if kallmodsyms is not there? The test does not directly rely on
> that file. The test simply makes libdtrace calls, and dt_modsym_update()
> can fail over to kallsyms if kallmodsyms is not present.
The .x file depends on being able to read kallmodsyms to determine whether
the kernel fix that the test depends on is in the running kernel, which
cannot be when kallmodsyms isn't even in the kernel.
Without kallmodsyms, this test becomes a verifier for the kallsyms data that
the kernel provides, and then only in terms of loaded modules, which is pretty
much guaranteed to be correct or the kernel modules would be conflicting and
cause horrible crashes of the kernel.
With modules.builtin.ranges, the association of an address with a builtin
module is done by performing a lookup of the symbol address in the data that
modules.builtin.ranges provides. If that has overlapping ranges, then this
is a kernel bug, and this test wouldn't be able to detect it anyway.
So, if kallmodsyms is not present, the test is useless.
> On 2/9/26 13:34, Kris Van Hees wrote:
> > Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
> > ---
> > test/unittest/consumer/tst.merge_ranges_bug25767469.x | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/test/unittest/consumer/tst.merge_ranges_bug25767469.x b/test/unittest/consumer/tst.merge_ranges_bug25767469.x
> > index 7e265f2f..a92690ad 100755
> > --- a/test/unittest/consumer/tst.merge_ranges_bug25767469.x
> > +++ b/test/unittest/consumer/tst.merge_ranges_bug25767469.x
> > @@ -1,10 +1,14 @@
> > #!/bin/bash
> > #
> > # Oracle Linux DTrace.
> > -# Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
> > +# Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved.
> > # Licensed under the Universal Permissive License v 1.0 as shown at
> > # http://oss.oracle.com/licenses/upl.
> > +# If /proc/kallmodsyms does not exist, there is nothing to test.
> > +
> > +[[ -r /proc/kallmodsyms ]] || exit 2
> > +
> > # The test depends on a kernel fix to report kernel (and built-in-module)
> > # symbol sizes correctly in /proc/kallmodsyms. An easy check is to count
> > # how many kernel and built-in-module symbols (that is, symbols that appear
next prev parent reply other threads:[~2026-02-09 19:05 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-09 18:34 [PATCH] test: skip when /proc/kallmodsyms is not present Kris Van Hees
2026-02-09 18:55 ` Eugene Loh
2026-02-09 19:04 ` Kris Van Hees [this message]
2026-02-09 19:13 ` Eugene Loh
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=aYov1BfhUaIuEAg6@oracle.com \
--to=kris.van.hees@oracle.com \
--cc=dtrace-devel@oss.oracle.com \
--cc=dtrace@lists.linux.dev \
--cc=eugene.loh@oracle.com \
/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