I am currently working on Poky on an embedded PPC system.
I am experiencing a "serial8250: too much work for irq36" problem around 50-75% times I try to boot.
What I was thinking to do is
1. Reduce printk lines
2. Check if there is any fix about this error on Linux source files update
The error I am observing is this one:
serial8250_interrupt: 8544 callbacks suppressed
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
(several lines same of the ones before)
INFO: rcu_sched self-detected stall on CPU
3: (1 GPs behind) idle=f9f/140000000000001/0 softirq=0/0 fqs=1699
INFO: rcu_sched detected stalls on CPUs/tasks:
0: (1 GPs behind) idle=965/140000000000001/0 softirq=0/0 fqs=1699
3: (1 GPs behind) idle=f9f/140000000000001/0 softirq=0/0 fqs=1699
(detected by 1, t=52517 jiffies, g=91, c=90, q=161)
Task dump for CPU 0:
(agetty) R running 0 1915 1 0x00000084
Call Trace:
[ed0079a0] [c005b408] update_cfs_rq_blocked_load+0xb8/0x1c0 (unreliable)
[ed007a60] [00000211] 0x211
Task dump for CPU 3:
systemd-journal R running 0 957 1 0x00000004
Call Trace:
rcu_sched kthread starved for 50818 jiffies!
(t=52529 jiffies g=91 c=90 q=161)
rcu_sched kthread starved for 50831 jiffies!
Task dump for CPU 0:
(agetty) R running 0 1915 1 0x00000084
Call Trace:
[ed0079a0] [c005b408] update_cfs_rq_blocked_load+0xb8/0x1c0 (unreliable)
[ed007a60] [00000211] 0x211
Task dump for CPU 3:
systemd-journal R running 0 957 1 0x00000004
Call Trace:
[e9ee9b80] [c007f948] rcu_dump_cpu_stacks+0xa8/0x100 (unreliable)
[e9ee9ba0] [c008386c] rcu_check_callbacks+0x4fc/0x7b0
[e9ee9c10] [c008725c] update_process_times+0x3c/0x70
[e9ee9c20] [c009afb8] tick_sched_timer+0x68/0xe0
[e9ee9c50] [c00880b4] __run_hrtimer.isra.34+0x54/0xf0
[e9ee9c70] [c00889b8] hrtimer_interrupt+0x118/0x330
[e9ee9ce0] [c0009658] __timer_interrupt+0xa8/0x1a0
[e9ee9d00] [c0009980] timer_interrupt+0xb0/0xe0
[e9ee9d20] [c000f7e0] ret_from_except+0x0/0x18
--- interrupt: 901 at smp_call_function_many+0x2a0/0x300
LR = smp_call_function_many+0x270/0x300
[e9ee9de0] [c00a033c] smp_call_function_many+0x24c/0x300 (unreliable)
[e9ee9e20] [c00177cc] flush_tlb_mm+0x9c/0xa0
[e9ee9e40] [c00f8dd8] tlb_flush_mmu_tlbonly.part.86+0x18/0x90
[e9ee9e50] [c00f8f54] tlb_flush_mmu+0x24/0x40
[e9ee9e60] [c00f8f88] tlb_finish_mmu+0x18/0x70
[e9ee9e70] [c00fee00] unmap_region+0xc0/0x140
[e9ee9ef0] [c01013ec] do_munmap+0x26c/0x430
[e9ee9f20] [c01015e8] vm_munmap+0x38/0x60
[e9ee9f40] [c000f130] ret_from_syscall+0x0/0x3c
--- interrupt: c01 at 0x201842fc
LR = 0x20117090
serial8250_interrupt: 8544 callbacks suppressed
serial8250: too much work for irq36
serial8250: too much work for irq36
serial8250: too much work for irq36
(several lines same of the ones before)
Is there problem for using NXP SDK 2.0 on your board?
Is there problem if default configuration of SDK 2.0 is used on your board?
I had a similar problem,MPC85XX T2080 E6500 RCU检测CPU X卡顿 - 恩智浦社区 (nxp.com)