Message ID | 00383ba88a47c3f8342d12263c24bdf95527b07d.1612546384.git.andreyknvl@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | kasan: optimizations and fixes for HW_TAGS | expand |
On Fri, Feb 05, 2021 at 06:34PM +0100, Andrey Konovalov wrote: > Hwardware tag-based KASAN only reports the first found bug. After that MTE > tag checking gets disabled. Clarify this in comments and documentation. > > Signed-off-by: Andrey Konovalov <andreyknvl@google.com> Reviewed-by: Marco Elver <elver@google.com> > --- > Documentation/dev-tools/kasan.rst | 8 ++++++-- > mm/kasan/hw_tags.c | 2 +- > 2 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/Documentation/dev-tools/kasan.rst b/Documentation/dev-tools/kasan.rst > index e022b7506e37..1faabbe23e09 100644 > --- a/Documentation/dev-tools/kasan.rst > +++ b/Documentation/dev-tools/kasan.rst > @@ -155,7 +155,7 @@ Boot parameters > ~~~~~~~~~~~~~~~ > > 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 > particular KASAN features. > > @@ -166,7 +166,8 @@ particular KASAN features. > ``off``). > > - ``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 > ~~~~~~~~~~~~~~ > @@ -296,6 +297,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 > 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? > -------------------------------------------- > > diff --git a/mm/kasan/hw_tags.c b/mm/kasan/hw_tags.c > index e529428e7a11..6c9285c906b8 100644 > --- a/mm/kasan/hw_tags.c > +++ b/mm/kasan/hw_tags.c > @@ -48,7 +48,7 @@ EXPORT_SYMBOL(kasan_flag_enabled); > /* Whether to collect alloc/free stack traces. */ > 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; > > /* kasan=off/on */ > -- > 2.30.0.365.g02bc693789-goog >
diff --git a/Documentation/dev-tools/kasan.rst b/Documentation/dev-tools/kasan.rst index e022b7506e37..1faabbe23e09 100644 --- a/Documentation/dev-tools/kasan.rst +++ b/Documentation/dev-tools/kasan.rst @@ -155,7 +155,7 @@ Boot parameters ~~~~~~~~~~~~~~~ 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 particular KASAN features. @@ -166,7 +166,8 @@ particular KASAN features. ``off``). - ``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 ~~~~~~~~~~~~~~ @@ -296,6 +297,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 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? -------------------------------------------- diff --git a/mm/kasan/hw_tags.c b/mm/kasan/hw_tags.c index e529428e7a11..6c9285c906b8 100644 --- a/mm/kasan/hw_tags.c +++ b/mm/kasan/hw_tags.c @@ -48,7 +48,7 @@ EXPORT_SYMBOL(kasan_flag_enabled); /* Whether to collect alloc/free stack traces. */ 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; /* kasan=off/on */
Hwardware tag-based KASAN only reports the first found bug. After that MTE tag checking gets disabled. Clarify this in comments and documentation. Signed-off-by: Andrey Konovalov <andreyknvl@google.com> --- Documentation/dev-tools/kasan.rst | 8 ++++++-- mm/kasan/hw_tags.c | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-)