Re: [PATCH -next 1/2] mm: disable KCSAN for kmemleak

From: Marco Elver
Date: Tue Mar 03 2020 - 15:20:54 EST


On Tue, 3 Mar 2020 at 20:28, Qian Cai <cai@xxxxxx> wrote:
>
> Kmemleak could scan task stacks while plain writes happens to those
> stack variables which could results in data races. For example, in
> sys_rt_sigaction and do_sigaction(), it could have plain writes in
> a 32-byte size. Since the kmemleak does not care about the actual values
> of a non-pointer and all do_sigaction() call sites only copy to stack
> variables, just disable KCSAN for kmemleak to avoid annotating anything
> outside Kmemleak just because Kmemleak scans everything.
>
> Suggested-by: Marco Elver <elver@xxxxxxxxxx>
> Signed-off-by: Qian Cai <cai@xxxxxx>

Acked-by: Marco Elver <elver@xxxxxxxxxx>

Thank you!

> ---
> mm/Makefile | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/mm/Makefile b/mm/Makefile
> index 946754cc66b6..6e263045f0c2 100644
> --- a/mm/Makefile
> +++ b/mm/Makefile
> @@ -14,6 +14,7 @@ KCSAN_SANITIZE_slab_common.o := n
> KCSAN_SANITIZE_slab.o := n
> KCSAN_SANITIZE_slub.o := n
> KCSAN_SANITIZE_page_alloc.o := n
> +KCSAN_SANITIZE_kmemleak.o := n
>
> # These files are disabled because they produce non-interesting and/or
> # flaky coverage that is not a function of syscall inputs. E.g. slab is out of
> --
> 1.8.3.1
>