After that, it might be acceptable to call rebalance_tick from a tasklet,
although it would be uneeded overhead on small systems. It might be better
Here is a patch that only runs rebalance tick from a tasklet in the scheduler. For UP there will be no tasklet.
[RFC] sched_rebalance_tick with interrupts enabled
scheduler_tick() has the potential of running for some time if f.e.
sched_domains for a system with 1024 processors have to be balanced.
We currently do all of that with interrupts disabled. So we may be unable
to service interrupts for some time. Most of that time is potentially
spend in rebalance_tick.
This patch splits off rebalance_tick from scheduler_tick and schedules
it via a tasklet.
Signed-off-by: Christoph Lameter <clameter@xxxxxxx>