Messages in this thread | | | Date | Mon, 10 Jul 2023 11:53:40 +0200 | Subject | Re: [PATCH] kasan, slub: fix HW_TAGS zeroing with slub_debug | From | Vlastimil Babka <> |
| |
On 7/5/23 14:44, andrey.konovalov@linux.dev wrote: > From: Andrey Konovalov <andreyknvl@google.com> > > Commit 946fa0dbf2d8 ("mm/slub: extend redzone check to extra allocated > kmalloc space than requested") added precise kmalloc redzone poisoning > to the slub_debug functionality. > > However, this commit didn't account for HW_TAGS KASAN fully initializing > the object via its built-in memory initialization feature. Even though > HW_TAGS KASAN memory initialization contains special memory initialization > handling for when slub_debug is enabled, it does not account for in-object > slub_debug redzones. As a result, HW_TAGS KASAN can overwrite these > redzones and cause false-positive slub_debug reports. > > To fix the issue, avoid HW_TAGS KASAN memory initialization when slub_debug > is enabled altogether. Implement this by moving the __slub_debug_enabled > check to slab_post_alloc_hook. Common slab code seems like a more > appropriate place for a slub_debug check anyway. > > Fixes: 946fa0dbf2d8 ("mm/slub: extend redzone check to extra allocated kmalloc space than requested") > Cc: <stable@vger.kernel.org> > Reported-by: Mark Rutland <mark.rutland@arm.com> > Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Thanks!
| |