Messages in this thread | | | From | Andrey Konovalov <> | Date | Wed, 19 Oct 2022 21:48:42 +0200 | Subject | Re: [PATCH] kasan: Enable KUnit integration whenever CONFIG_KUNIT is enabled |
| |
On Wed, Oct 19, 2022 at 5:06 PM David Gow <davidgow@google.com> 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.
| |