Re: [PATCH v4 3/6] kasan: print timer and workqueue stack

From: Marco Elver
Date: Thu Sep 24 2020 - 07:55:12 EST


On Thu, 24 Sep 2020 at 13:47, Alexander Potapenko <glider@xxxxxxxxxx> wrote:
>
> On Thu, Sep 24, 2020 at 6:05 AM Walter Wu <walter-zh.wu@xxxxxxxxxxxx> wrote:
> >
> > The aux_stack[2] is reused to record the call_rcu() call stack,
> > timer init call stack, and enqueuing work call stacks. So that
> > we need to change the auxiliary stack title for common title,
> > print them in KASAN report.
> >
> > Signed-off-by: Walter Wu <walter-zh.wu@xxxxxxxxxxxx>
> > Suggested-by: Marco Elver <elver@xxxxxxxxxx>
> > Acked-by: Marco Elver <elver@xxxxxxxxxx>
> > Reviewed-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
> > Reviewed-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
> > Cc: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
> > Cc: Alexander Potapenko <glider@xxxxxxxxxx>
> > ---
> >
> > v2:
> > - Thanks for Marco suggestion.
> > - We modify aux stack title name in KASAN report
> > in order to print call_rcu()/timer/workqueue stack.
> >
> > ---
> > mm/kasan/report.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/mm/kasan/report.c b/mm/kasan/report.c
> > index 4f49fa6cd1aa..886809d0a8dd 100644
> > --- a/mm/kasan/report.c
> > +++ b/mm/kasan/report.c
> > @@ -183,12 +183,12 @@ static void describe_object(struct kmem_cache *cache, void *object,
> >
> > #ifdef CONFIG_KASAN_GENERIC
> > if (alloc_info->aux_stack[0]) {
> > - pr_err("Last call_rcu():\n");
> > + pr_err("Last potentially related work creation:\n");
>
> This doesn't have to be a work creation (expect more callers of
> kasan_record_aux_stack() in the future), so maybe change the wording
> here to "Last potentially related auxiliary stack"?

I suggested "work creation" as it's the most precise for what it is
used for now.

What other users do you have in mind in future that are not work creation?