[RFC][PATCH 0/2] sched: Allow interrupts to be enabled in idle balance

From: Steven Rostedt
Date: Fri Dec 21 2012 - 19:54:23 EST


The idle_balance() code is treated special in the scheduler for
no real apparent reason. There's an unlikely check for !rq->nr_running
in the hot path of the scheduler, for just the idle load balancing.

As sched classes can have their own post schedule routine, and the
idle task has its own scheduler class, we can move the idle_balance()
into the idle task's post schedule routine, and out of the hot path
of the scheduler (no sepecial check).

An added benefit for doing this is that this enables us to enable
interrupts in the idle balance code. Shrinking the time interrupts
are disabled while doing load balancing.

These patches have been thoroughly tested (on a 40 core box as well
as a 4 core and UP config), and are prime for inclusion (for 3.9).
But I'm posted them now as an RFC for comments.

Thanks!

-- Steve

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/