diff options
author | Andrey Konovalov <andreyknvl@google.com> | 2021-04-29 23:00:49 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2021-04-30 11:20:42 -0700 |
commit | 99734b535d9bf8d5826be8f8f3719dfc586c3452 (patch) | |
tree | b6830f839757840e1b9d26474e9e4549498026f7 /kernel/irq_work.c | |
parent | 23f61f0fe106da8c9f6a883965439ecc2838f116 (diff) | |
download | lwn-99734b535d9bf8d5826be8f8f3719dfc586c3452.tar.gz lwn-99734b535d9bf8d5826be8f8f3719dfc586c3452.zip |
kasan: detect false-positives in tests
Currently, KASAN-KUnit tests can check that a particular annotated part of
code causes a KASAN report. However, they do not check that no unwanted
reports happen between the annotated parts.
This patch implements these checks.
It is done by setting report_data.report_found to false in
kasan_test_init() and at the end of KUNIT_EXPECT_KASAN_FAIL() and then
checking that it remains false at the beginning of
KUNIT_EXPECT_KASAN_FAIL() and in kasan_test_exit().
kunit_add_named_resource() call is moved to kasan_test_init(), and the
value of fail_data.report_expected is kept as false in between
KUNIT_EXPECT_KASAN_FAIL() annotations for consistency.
Link: https://lkml.kernel.org/r/48079c52cc329fbc52f4386996598d58022fb872.1617207873.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Marco Elver <elver@google.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/irq_work.c')
0 files changed, 0 insertions, 0 deletions