[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <0004f2ed-ac2b-4d93-8a4d-d01cbede94a2@gmail.com>
Date: Fri, 18 Jul 2025 17:43:37 +0200
From: Andrey Ryabinin <ryabinin.a.a@...il.com>
To: Marco Elver <elver@...gle.com>, Andrew Morton <akpm@...ux-foundation.org>
Cc: Alexander Potapenko <glider@...gle.com>,
Dmitry Vyukov <dvyukov@...gle.com>, Andrey Konovalov <andreyknvl@...il.com>,
Vincenzo Frascino <vincenzo.frascino@....com>, kasan-dev@...glegroups.com,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Uladzislau Rezki <urezki@...il.com>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Yeoreum Yun <yeoreum.yun@....com>, Yunseong Kim <ysk@...lloc.com>,
stable@...r.kernel.org
Subject: Re: [PATCH] kasan: use vmalloc_dump_obj() for vmalloc error reports
On 7/16/25 5:23 PM, Marco Elver wrote:
> Since 6ee9b3d84775 ("kasan: remove kasan_find_vm_area() to prevent
> possible deadlock"), more detailed info about the vmalloc mapping and
> the origin was dropped due to potential deadlocks.
>
> While fixing the deadlock is necessary, that patch was too quick in
> killing an otherwise useful feature, and did no due-diligence in
> understanding if an alternative option is available.
>
> Restore printing more helpful vmalloc allocation info in KASAN reports
> with the help of vmalloc_dump_obj(). Example report:
>
> | BUG: KASAN: vmalloc-out-of-bounds in vmalloc_oob+0x4c9/0x610
> | Read of size 1 at addr ffffc900002fd7f3 by task kunit_try_catch/493
> |
> | CPU: [...]
> | Call Trace:
> | <TASK>
> | dump_stack_lvl+0xa8/0xf0
> | print_report+0x17e/0x810
> | kasan_report+0x155/0x190
> | vmalloc_oob+0x4c9/0x610
> | [...]
> |
> | The buggy address belongs to a 1-page vmalloc region starting at 0xffffc900002fd000 allocated at vmalloc_oob+0x36/0x610
> | The buggy address belongs to the physical page:
> | page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x126364
> | flags: 0x200000000000000(node=0|zone=2)
> | raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000
> | raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
> | page dumped because: kasan: bad access detected
> |
> | [..]
>
> Fixes: 6ee9b3d84775 ("kasan: remove kasan_find_vm_area() to prevent possible deadlock")
> Suggested-by: Uladzislau Rezki <urezki@...il.com>
> Cc: Alexander Potapenko <glider@...gle.com>
> Cc: Andrey Konovalov <andreyknvl@...il.com>
> Cc: Andrey Ryabinin <ryabinin.a.a@...il.com>
> Cc: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
> Cc: Yeoreum Yun <yeoreum.yun@....com>
> Cc: Yunseong Kim <ysk@...lloc.com>
> Cc: <stable@...r.kernel.org>
> Signed-off-by: Marco Elver <elver@...gle.com>
Acked-by: Andrey Ryabinin <ryabinin.a.a@...il.com>
Powered by blists - more mailing lists