Hi Andrey! On 11.12.2023 18:50, Andrey Konovalov wrote: > On Mon, Dec 11, 2023 at 5:37 PM Paul Heidekrüger > <paul.heidekrueger@xxxxxx> wrote: > > > > Hi all! > > > > On 05.05.2023 09:58, Steven Rostedt wrote: > > > On Mon, 1 May 2023 15:02:37 -0700 > > > Peter Collingbourne <pcc@xxxxxxxxxx> wrote: > > > > > > > > > "ftrace" is really for just the function tracing, but CONFIG_FTRACE > > > > > > really should just be for the function tracing infrastructure, and > > > > > > perhaps not even include trace events :-/ But at the time it was > > > > > > created, it was for all the "tracers" (this was added before trace > > > > > > events). > > > > > > > > > > It would be great to see this cleaned up. I found this aspect of how > > > > > tracing works rather confusing. > > > > > > > > > > So do you think it makes sense for the KASAN tests to "select TRACING" > > > > > for now if the code depends on the trace event infrastructure? > > > > > > > > Any thoughts? It looks like someone else got tripped up by this: > > > > https://reviews.llvm.org/D144057 > > > > > > Yeah, it really does need to get cleaned up, but unfortunately it's not > > > going to be a trivial change. We need to make sure it's done in a way that > > > an old .config still keeps the same things enabled with the new config > > > settings. That takes some trickery in the dependency. > > > > > > I'll add this to my todo list, hopefully it doesn't fall into the abyss > > > portion of that list :-p > > > > > > -- Steve > > > > Just adding to Peter's concern re: CONFIG_KASAN_KUNIT_TEST's dependency on > > CONFIG_TRACEPOINTS. > > > > I'm having no luck running the KASan KUnit tests on arm64 with the following > > .kunitconfig on v6.6.0: > > > > CONFIG_KUNIT=y > > CONFIG_KUNIT_ALL_TESTS=n > > CONFIG_DEBUG_KERNEL=y > > CONFIG_KASAN=y > > CINFIG_KASAN_GENERIC=y > > CONFIG_KASAN_KUNIT_TEST=y > > > > CONFIG_TRACEPOINTS, which CONFIG_KASAN_TEST relies on since the patch this > > thread is based on, isn't defined for arm64, AFAICT. > > > > If I comment out the dependency on CONFIG_TRACEPOINTS, the tests appear to run, > > but KUnit isn't picking up the KASan output. > > > > If I revert the patch, the above .kunitconfig appears to work fine on arm64 and > > the tests pass. > > > > The above .kunitconfig works as intended on X86, no changes necessary. > > > > Am I missing something? > > Hi Paul, > > I've been successfully running KASAN tests with CONFIG_TRACEPOINTS > enabled on arm64 since this patch landed. Interesting ... > What happens when you try running the tests with .kunitconfig? Does > CONFIG_TRACEPOINTS or CONFIG_KASAN_KUNIT_TEST get disabled during > kernel building? Yes, exactly, that's what's happening. Here's the output kunit.py is giving me. I replaced CONFIG_DEBUG_KERNEL with CONFIG_TRACEPOINTS in my .kunitconfig. Otherwise, it's identical with the one I posted above. ➜ ./tools/testing/kunit/kunit.py run --kunitconfig=mm/kasan/.kunitconfig --arch=arm64 Configuring KUnit Kernel ... Regenerating .config ... Populating config with: $ make ARCH=arm64 O=.kunit olddefconfig ERROR:root:Not all Kconfig options selected in kunitconfig were in the generated .config. This is probably due to unsatisfied dependencies. Missing: CONFIG_KASAN_KUNIT_TEST=y, CONFIG_TRACEPOINTS=y Does CONFIG_TRACEPOINTS have some dependency I'm not seeing? I couldn't find a reason why it would get disabled, but I could definitely be wrong. > Or tests just don't get executed? > > Thanks! Many thanks, Paul