[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1598321744.29129.4.camel@mtksdccf07>
Date: Tue, 25 Aug 2020 10:15:44 +0800
From: Walter Wu <walter-zh.wu@...iatek.com>
To: Marco Elver <elver@...gle.com>
CC: Andrey Ryabinin <aryabinin@...tuozzo.com>,
Alexander Potapenko <glider@...gle.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Matthias Brugger <matthias.bgg@...il.com>,
John Stultz <john.stultz@...aro.org>,
"Stephen Boyd" <sboyd@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
"Tejun Heo" <tj@...nel.org>,
Lai Jiangshan <jiangshanlai@...il.com>,
kasan-dev <kasan-dev@...glegroups.com>,
Linux Memory Management List <linux-mm@...ck.org>,
LKML <linux-kernel@...r.kernel.org>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
wsd_upstream <wsd_upstream@...iatek.com>,
<linux-mediatek@...ts.infradead.org>
Subject: Re: [PATCH v2 0/6] kasan: add workqueue and timer stack for generic
KASAN
On Mon, 2020-08-24 at 13:50 +0200, Marco Elver wrote:
> On Mon, 24 Aug 2020 at 10:07, Walter Wu <walter-zh.wu@...iatek.com> wrote:
> >
> > Syzbot reports many UAF issues for workqueue or timer, see [1] and [2].
> > In some of these access/allocation happened in process_one_work(),
> > we see the free stack is useless in KASAN report, it doesn't help
> > programmers to solve UAF on workqueue. The same may stand for times.
> >
> > This patchset improves KASAN reports by making them to have workqueue
> > queueing stack and timer queueing stack information. It is useful for
> > programmers to solve use-after-free or double-free memory issue.
> >
> > Generic KASAN will record the last two workqueue and timer stacks,
> > print them in KASAN report. It is only suitable for generic KASAN.
> >
> > [1]https://groups.google.com/g/syzkaller-bugs/search?q=%22use-after-free%22+process_one_work
> > [2]https://groups.google.com/g/syzkaller-bugs/search?q=%22use-after-free%22%20expire_timers
> > [3]https://bugzilla.kernel.org/show_bug.cgi?id=198437
> >
> > Walter Wu (6):
> > timer: kasan: record timer stack
> > workqueue: kasan: record workqueue stack
> > kasan: print timer and workqueue stack
> > lib/test_kasan.c: add timer test case
> > lib/test_kasan.c: add workqueue test case
> > kasan: update documentation for generic kasan
> >
> > ---
> >
> > Changes since v1:
> > - Thanks for Marco and Thomas suggestion.
> > - Remove unnecessary code and fix commit log
> > - reuse kasan_record_aux_stack() and aux_stack
> > to record timer and workqueue stack.
> > - change the aux stack title for common name.
>
> Much cleaner.
>
> In general,
>
> Acked-by: Marco Elver <elver@...gle.com>
>
> but I left some more comments. I'm a bit worried about the tests,
> because of KASAN-test KUnit rework, but probably not much we can do
> until these are added to -mm tree.
>
Hi Marco,
Thanks for your review and friendly reminder.
If needed, I will rebase and resend the test case.
Walter
> Thanks,
> -- Marco
Powered by blists - more mailing lists