Re: rcu stall caused by rt task with high minor page fault rate

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2023-05-30 12:51:48 [+0200], Kegl Rohit wrote:
> Hello!
Hi,

> But for my understanding RCU_BOOST should help here, even if the rt
> app is not implemented correctly?

RCU_BOOST will help to move a task outside of its rcu_read() section if
it got preempted there. Otherwise the RCU machine can't make progress
and free after a grace period. If a task with low priority is stuck in
such a section, then RCU_BOOST will help to move it out. This requires
that the high-priority task gets into a RCU section for it work (usually
not a problem but wouldn't happen if a task loops 100% in userland).

>From you describe, your RCU warning came probably from the fact that
your application is consuming 100% of the CPU. Your RT task needs to
rest from to time so that other kernel threads get their turn.

By enabling callback offloading and moving that RCU thread another CPU
you ensure that the completion callbacks get invoked.
Then you need to ensure that RCU can assure that it makes progress. This
is probably what triggers here. There is another thread for that but
this one can only be offloaded with CONFIG_NOHZ_FULL.

> Thanks in advance!

Sebastian



[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux