On 7/15/2013 2:03 PM, Peter Zijlstra wrote:Well, if you ever want to go faster there must've been a moment to slow down.
Without means and reason to slow down the entire 'can I go fast noaw pls?'
thing simply doesn't make sense.
I kind of tried to hint at this
there's either
go_fastest_now()
with the contract that the policy drivers can override this after some time (few ms)
or you have to treat it as a lease:
go_fastest()
and then
no_need_to_go_fastest_anymore_so_forget_I_asked()
this is NOT the same as
go_slow_now()
the former has a specific request, and then an end to that specific request,
the later is just a new unbounded command
if you have requests (that either time out or get canceled), you can have
requests from multiple parts of the kernel (and potentially even from
hardware in the thermal case), and some arbiter
who resolves multiple requests existing.
if you only have unbounded commands, you cannot really have such an arbiter.