linux-fslc 5.4.114: rcu_preempt detected stalls on IMX7D #dunfell #meta-freescale
We are experiencing kernel crash when we are stress testing WiFi functionality.
please see attachment for kernel dump (near end of log)
we have read that rcu_preempt dump are sometimes caused by spin lock used by driver when kernel has PREEMPT enabled.
and suggested solution is making change as something below
spin_unlock_irq(&signal->obj.wait.lock); ---> raw_spin_unlock_irq(&signal->obj.wait.lock);
spin_lock_irq(&signal->obj.wait.lock); -----> raw_spin_lock_irq(&signal->obj.wait.lock);
however, the wireless driver on our platform doesn't use such calls.
The WiFi device is an RTL8822CS using SDIO interface, it is an out-of-tree driver released by Realtek.
When we applied the same wireless driver on official NXP BSPs Linux 5.10.9 (gatesgarth) and Linux 4.9.11 (morty) this issue isn't observed.
Attaching the kernel configs for the two BSPs config_5.4.114_dunfell (meta-freescale community BSP). config_5.10.9_gatesgarth (NXP
Can anyone please advise on possible cause and solution?
much appreciate the assistance and best regards,