On Wed, Oct 19, 2022 at 5:06 PM David Gow <davidgow@xxxxxxxxxx> wrote: > > > How does KUnit detect a KASAN failure for other tests than the KASAN > > ones? I thought this was only implemented for KASAN tests. At least, I > > don't see any code querying kunit_kasan_status outside of KASAN tests. > > Yeah, there aren't any other tests which set up a "kasan_status" > resource to expect specific failures, but we still want the fallback > call to kunit_set_failure() so that any test which causes a KASAN > report will fail: > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/mm/kasan/report.c#n130 Ah, right. Thanks for the explanation! > > I'm currently switching KASAN tests from using KUnit resources to > > console tracepoints [1], and those patches will be in conflict with > > yours. > > Ah, sorry -- I'd seen these go past, and totally forgot about them! I > think all we really want to keep is the ability to fail tests if a > KASAN report occurs. The tricky bit is then disabling that for the > KASAN tests, so that they can have "expected" failures. I wonder what's the best solution to support this, assuming KASAN tests are switched to using tracepoints... I guess we could still keep the per-task KUnit flag, and only use it for non-KASAN tests. However, they will still suffer from the same issue tracepoints solve for KASAN tests: if a bug is triggered in a context other than the current task, the test will succeed.