On Sun, Jul 28, 2024 at 02:18:51PM -0700, Andrew Morton 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? > > (And "avoiding lockup detector warnings" isn't the objective here - the > detector is merely a tool for identifying issues) > As for 1 sec execution and worst case. I did some analysis with enabling CONFIG_LOCK_STAT to see some waiting statistics across different locks: See it here: https://lore.kernel.org/linux-mm/ZogS_04dP5LlRlXN@pc636/T/#m5d57f11d9f69aef5313f4efbe25415b3bae4c818 It would be really good if Adrian could run the "compiling workload" on his big system and post the statistics here. For example: a) v6.11-rc1 + KASAN. b) v6.11-rc1 + KASAN + patch. Thanks! -- Uladzislau Rezki