Re: PREEMPT_RT causes scheduling errors with f_rndis USB gadget

From: Sebastian Andrzej Siewior
Date: Mon Mar 07 2022 - 03:55:27 EST


On 2022-03-06 18:17:54 [+0800], Yunhao Tian wrote:
> Hi everyone,
Hi,

> I'm using Linux 5.15.24-rt31 kernel with PREEMPT_RT enabled, on my
> RK3308 board. I set up f_rndis gadget with the following script, and
> plugged my board to a x86 Linux computer running 5.15.25 kernel:

Is this 5.15.24-rt31 as-is or are there other patches involved?
What UDC is used here?


> [ 25.993834] NOHZ tick-stop error: Non-RCU local softirq work is
> pending, handler #80!!!
that is sched


> [ 25.995885] NOHZ tick-stop error: Non-RCU local softirq work is
> pending, handler #180!!!

that is additionally hrtimer.
I did touch hrtimer but I did not yet touch sched so I account myself as
50% innocent.
You don't have by chance change the thread affinity of tasks/ interrupt
threads? The SoC has 4 cores if I see this right.

> If I turn off PREEMPT_RT, there won't be any errors while downloading.
>
> I believe this problem is not tied to any specific board, and anyone
> can reproduce this problem using a Raspberry Pi (Although I didn't try
> because I don't have one). I would like to ask for assistance
> regarding this problem.

Let me try dummy_udc…

Sebastian