On Mon, Jul 29, 2024 at 5:18 AM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > 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? Yes, this path can be reproduced by other workloads. The stress-ng command `stress-ng --exec $(nproc) --timeout 5m` can also trigger the lockup detector in this path. (Confirmed on v6.11-rc1) -- Adrian