On Mon 2019-08-19 12:47:29, Petr Mladek wrote: > ( Resending this as a proper patch with updated commit messages. > The original was > https://lkml.kernel.org/r/[email protected] ) > > We were analyzing logs with several softlockup reports in > flush_tlb_kernel_range(). > They were confusing. Especially it was not clear whether it was deadlock, > livelock, or separate softlockups. > > It went out that even a simple busy loop: > > while (true) > cpu_relax(); > > is able to produce several softlockups reports: > > [ 168.277520] watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [cat:4865] > [ 196.277604] watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [cat:4865] > [ 236.277522] watchdog: BUG: soft lockup - CPU#1 stuck for 23s! [cat:4865] > ^^^^ > > This patchset fixes the problem in two steps: > > + 1st patch prevents restart of the watchdog from unrelated locations. > Each softlockup is reported only once: > > [ 320.248948] watchdog: BUG: soft lockup - CPU#2 stuck for 26s! [cat:4916] > > > + 2nd patch helps to distinguish several possible situations by > regular reports. The report looks like: > > [ 480.372418] watchdog: BUG: soft lockup - CPU#2 stuck for 26s! [cat:4943] > [ 508.372359] watchdog: BUG: soft lockup - CPU#2 stuck for 52s! [cat:4943] > [ 548.372359] watchdog: BUG: soft lockup - CPU#2 stuck for 89s! [cat:4943] > [ 576.372351] watchdog: BUG: soft lockup - CPU#2 stuck for 115s! [cat:4943]
Gently ping. Is anyone against merging the two fixes, please? Best Regards, Petr

