Re: [PATCH] rcu-tasks: Use rcuwait for the rcu_tasks_kthread().

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

 



On Mon, Mar 07, 2022 at 06:57:59PM +0100, Sebastian Andrzej Siewior wrote:
> On 2022-03-07 07:09:13 [-0800], Paul E. McKenney wrote:
> > > Correct. Possible due to the removal of wait_queue_head (plus there is
> > > nothing else that would stand in the way otherwise).
> > 
> > Very good!
> > 
> > If the overhead becomes a problem in mainline, presumably we can do
> > a compile-time switch based on CONFIG_PREEMPT_RT or similar.
> 
> the rcuwake is a lot cheaper than waitqueue in terms of code or data
> involved, locks, …. The _HARD flag is a nop on !RT.
> So it should be a win-win situation here.

Even better!

> > > > If so, I am wondering if there are other
> > > > irq_work instances that need to move to _HARD.
> > > 
> > > We already have:
> > > kernel/rcu/tree.c:      rdp->rcu_iw = IRQ_WORK_INIT_HARD(rcu_iw_handler);
> > 
> > Because you prompted me to change it from IRQ_WORK_INIT() some time
> > back?  ;-)
> 
> Right. We have printk() for instance using the !HARD irq-work so this
> mostly a case-by-case decision usually avoiding HARD.

Sounds about right.  ;-)

							Thanx, Paul



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux