[PATCH v2 5/6] kasan: add tests for workqueue stack recording

Marco Elver elver at google.com
Mon Aug 24 07:49:14 EDT 2020


On Mon, 24 Aug 2020 at 10:14, Walter Wu <walter-zh.wu at mediatek.com> wrote:
>
> Adds a test to verify workqueue stack recording and print it in
> KASAN report.
>
> The KASAN report was as follows(cleaned up slightly):
>
>  BUG: KASAN: use-after-free in kasan_workqueue_uaf
>
>  Freed by task 54:
>   kasan_save_stack+0x24/0x50
>   kasan_set_track+0x24/0x38
>   kasan_set_free_info+0x20/0x40
>   __kasan_slab_free+0x10c/0x170
>   kasan_slab_free+0x10/0x18
>   kfree+0x98/0x270
>   kasan_workqueue_work+0xc/0x18
>
>  Last potentially related work creation:
>   kasan_save_stack+0x24/0x50
>   kasan_record_wq_stack+0xa8/0xb8
>   insert_work+0x48/0x288
>   __queue_work+0x3e8/0xc40
>   queue_work_on+0xf4/0x118
>   kasan_workqueue_uaf+0xfc/0x190
>
> Signed-off-by: Walter Wu <walter-zh.wu at mediatek.com>
> Cc: Andrey Ryabinin <aryabinin at virtuozzo.com>
> Cc: Dmitry Vyukov <dvyukov at google.com>
> Cc: Alexander Potapenko <glider at google.com>
> Cc: Matthias Brugger <matthias.bgg at gmail.com>
> Cc: Andrey Konovalov <andreyknvl at google.com>
> ---
>  lib/test_kasan.c | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)

These will majorly conflict with the KASAN-test KUnit rework, which I
don't know what the status is. AFAIK, these are not yet in -mm tree.

I think the KASAN-test KUnit rework has priority, as rebasing that
work on top of this patch is going to be difficult. So maybe these
test additions can be declared optional if there are conflicts coming,
and if that'll be the case you'll have to rebase and resend the test.

Thanks,
-- Marco



More information about the Linux-mediatek mailing list