kasan: clarify that only first bug is reported in HW_TAGS
Hwardware tag-based KASAN only reports the first found bug. After that MTE tag checking gets disabled. Clarify this in comments and documentation. Link: https://lkml.kernel.org/r/00383ba88a47c3f8342d12263c24bdf95527b07d.1612546384.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: Andrey Ryabinin <aryabinin@virtuozzo.com> Cc: Branislav Rankov <Branislav.Rankov@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Evgenii Stepanov <eugenis@google.com> Cc: Kevin Brodsky <kevin.brodsky@arm.com> Cc: Peter Collingbourne <pcc@google.com> Cc: Vincenzo Frascino <vincenzo.frascino@arm.com> Cc: Will Deacon <will.deacon@arm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
c80a03664e
commit
7169487bc2
|
@ -155,7 +155,7 @@ Boot parameters
|
||||||
~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Hardware tag-based KASAN mode (see the section about various modes below) is
|
Hardware tag-based KASAN mode (see the section about various modes below) is
|
||||||
intended for use in production as a security mitigation. Therefore it supports
|
intended for use in production as a security mitigation. Therefore, it supports
|
||||||
boot parameters that allow to disable KASAN competely or otherwise control
|
boot parameters that allow to disable KASAN competely or otherwise control
|
||||||
particular KASAN features.
|
particular KASAN features.
|
||||||
|
|
||||||
|
@ -165,7 +165,8 @@ particular KASAN features.
|
||||||
traces collection (default: ``on``).
|
traces collection (default: ``on``).
|
||||||
|
|
||||||
- ``kasan.fault=report`` or ``=panic`` controls whether to only print a KASAN
|
- ``kasan.fault=report`` or ``=panic`` controls whether to only print a KASAN
|
||||||
report or also panic the kernel (default: ``report``).
|
report or also panic the kernel (default: ``report``). Note, that tag
|
||||||
|
checking gets disabled after the first reported bug.
|
||||||
|
|
||||||
For developers
|
For developers
|
||||||
~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~
|
||||||
|
@ -295,6 +296,9 @@ Note, that enabling CONFIG_KASAN_HW_TAGS always results in in-kernel TBI being
|
||||||
enabled. Even when kasan.mode=off is provided, or when the hardware doesn't
|
enabled. Even when kasan.mode=off is provided, or when the hardware doesn't
|
||||||
support MTE (but supports TBI).
|
support MTE (but supports TBI).
|
||||||
|
|
||||||
|
Hardware tag-based KASAN only reports the first found bug. After that MTE tag
|
||||||
|
checking gets disabled.
|
||||||
|
|
||||||
What memory accesses are sanitised by KASAN?
|
What memory accesses are sanitised by KASAN?
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,7 @@ EXPORT_SYMBOL(kasan_flag_enabled);
|
||||||
/* Whether to collect alloc/free stack traces. */
|
/* Whether to collect alloc/free stack traces. */
|
||||||
DEFINE_STATIC_KEY_FALSE(kasan_flag_stacktrace);
|
DEFINE_STATIC_KEY_FALSE(kasan_flag_stacktrace);
|
||||||
|
|
||||||
/* Whether panic or disable tag checking on fault. */
|
/* Whether to panic or print a report and disable tag checking on fault. */
|
||||||
bool kasan_flag_panic __ro_after_init;
|
bool kasan_flag_panic __ro_after_init;
|
||||||
|
|
||||||
/* kasan=off/on */
|
/* kasan=off/on */
|
||||||
|
|
Loading…
Reference in New Issue