Re: sched: fix/optimise some issues

From: Peter Zijlstra
Date: Thu Jul 21 2011 - 11:08:48 EST

On Wed, 2011-07-20 at 15:42 +0200, Stephan BÃrwolf wrote:
> I also implemented an 128bit vruntime support:
> Majorly on systems with many tasks and (for example) deep cgroups
> (or increased NICE0_LOAD/ SCHED_LOAD_SCALE as in commit
> c8b281161dfa4bb5d5be63fb036ce19347b88c63), a weighted timeslice
> (unsigned long) can become very large (on x86_64) and consumes a
> large part of the u64 vruntimes (per tick) when added.
> This might lead to missscheduling because of overflows.

Right, so I've often wanted a [us]128 type, and gcc has some (broken?)
support for that, but overhead has always kept me from it.

There's also the non-atomicy thing to consider, see min_vruntime_copy

How horrid is the current vruntime situation?

As to your true-idle, there's a very good reason the current SCHED_IDLE
isnt' a true idle scheduler; it would create horrid priority inversion
problems, imagine the true idle task holding a mutex or is required to
complete something.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at