5

When we enable CONFIG_DETECT_SOFTLOCKUP to detect soft lockups, it creates a new task called khungtaskd which will run every 1s. If khungtaskd fails to get scheduled for 'n' seconds, then Kernel will declare a soft lockup.

My question is what are the reasons that prevent khungtaskd from running? One that I found is- trying to acquire an already acquired spinlock in interrupt context. What are the other reasons which will lead to soft lockup?

Pavan Manjunath
  • 27,404
  • 12
  • 99
  • 125

2 Answers2

1

For instance, on preemption disabled, uniprocessor(non-SMP) systems, any endless loop in a kernel thread will cause a soft-lockup.

TheCodeArtist
  • 21,479
  • 4
  • 69
  • 130
paul xiong
  • 19
  • 6
1

Too many interrupt (and computer too slow)? Check /proc/interrupts and see.

Some realtime tasks running?

Interrupts almost always have higher priority than other tasks.

J-16 SDiZ
  • 26,473
  • 4
  • 65
  • 84