Re: [PATCH 1/1] mm/vmalloc: Combine all TLB flush operations of KASAN shadow virtual address into one operation

From: Andrew Morton
Date: Sun Jul 28 2024 - 17:20:33 EST


On Sat, 27 Jul 2024 00:52:46 +0800 Adrian Huang <adrianhuang0701@xxxxxxxxx> wrote:

> From: Adrian Huang <ahuang12@xxxxxxxxxx>
>
> When compiling kernel source 'make -j $(nproc)' with the up-and-running
> KASAN-enabled kernel on a 256-core machine, the following soft lockup
> is shown:
>
> ...
>
> # CPU DURATION FUNCTION CALLS
> # | | | | | | |
> 76) $ 50412985 us | } /* __purge_vmap_area_lazy */
>
> ...
>
> # CPU DURATION FUNCTION CALLS
> # | | | | | | |
> 23) $ 1074942 us | } /* __purge_vmap_area_lazy */
> 23) $ 1074950 us | } /* drain_vmap_area_work */
>
> The worst execution time of drain_vmap_area_work() is about 1 second.

Cool, thanks.

But that's still pretty dreadful and I bet there are other workloads
which will trigger the lockup detector in this path?

(And "avoiding lockup detector warnings" isn't the objective here - the
detector is merely a tool for identifying issues)