Messages in this thread | | | Date | Thu, 21 Mar 2013 16:08:08 +0000 | From | Christoph Lameter <> | Subject | Re: [PATCH] nohz1: Documentation |
| |
On Wed, 20 Mar 2013, Paul E. McKenney wrote:
> > > Another approach is to offload RCU callback processing to "rcuo" kthreads > > > using the CONFIG_RCU_NOCB_CPU=y. The specific CPUs to offload may be > > > selected via several methods:
Why are there multiple rcuo threads? Would a single thread that may be able to run on multiple cpus not be sufficient?
> > "Even though the SCHED_FIFO task is the only task running, because the > > SCHED_OTHER tasks are queued on the CPU, it currently will not enter > > adaptive tick mode." > > Again, good point!
Uggh. That will cause problems and did cause problems when I tried to use nohz.
The OS always has some sched other tasks around that become runnable after a while (like for example the vm statistics update, or the notorious slab scanning). As long as SCHED_FIFO is active and there is no process in the same scheduling class then tick needs to be off. Also wish that this would work with SCHED_OTHER if there is only a single task with a certain renice value (-10?) and the rest is runnable at lower priorities. Maybe in that case stop the tick for a longer period and then give the lower priority tasks a chance to run but then switch off the tick again.
| |