Part Number: PROCESSOR-SDK-AM437X
We have a custom board with AM437X running TI Linux 4.14.79
This problem happens quite often, but we don't have a reproducible scenario. Suddenly all processes and work queues stop running
We can trigger SysRq and go to the kgdb over serial console, all threads are in context_switch:
Id Target Id Frame
* 1 Thread 4294967294 (shadowCPU0) 0xc01ae060 in arch_kgdb_breakpoint () at kernel/debug/debug_core.c:1071
2 Thread 1 (init) context_switch (rf=<optimized out>, next=<optimized out>, prev=<optimized out>, rq=<optimized out>) at kernel/sched/core.c:2811
3 Thread 2 (kthreadd) context_switch (rf=<optimized out>, next=<optimized out>, prev=<optimized out>, rq=<optimized out>) at kernel/sched/core.c:2811
4 Thread 4 (kworker/0:0H) context_switch (rf=<optimized out>, next=<optimized out>, prev=<optimized out>, rq=<optimized out>) at kernel/sched/core.c:2811
One of the threads:
#0 context_switch (rf=<optimized out>, next=<optimized out>, prev=<optimized out>, rq=<optimized out>) at kernel/sched/core.c:2811
#1 __schedule (preempt=<optimized out>) at kernel/sched/core.c:3384
#2 0xc085ba70 in schedule () at kernel/sched/core.c:3428
#3 0xc085f760 in schedule_hrtimeout_range_clock (expires=0x0, delta=<optimized out>, mode=HRTIMER_MODE_ABS, clock=1) at kernel/time/hrtimer.c:1716
#4 0xc085f7f4 in schedule_hrtimeout_range (expires=<optimized out>, delta=<optimized out>, mode=<optimized out>) at kernel/time/hrtimer.c:1761
otherwise everything looks OK, kdb/kgdb are working over the serial console, but threads aren't scheduled