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

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

 



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.

> > > 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.

> 							Thanx, Paul

Sebastian




[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