Re: Sending some form of notifaction when sched_fifo throttlingkicks in...

From: Dario Faggioli
Date: Thu Dec 23 2010 - 08:17:55 EST


On Thu, 2010-12-23 at 12:39 +0100, torbenh wrote:
> hi...
>
Hi,

> when the rt_runtime budget is exceeded, the kernel silently stops
> scheduling RT tasks. there is no way to distinguish this from
> a task taking very long to complete.
>
Well, this depends on how you do the accounting in your (user-level)
code.

> it would be very nice, if the kernel would send some form of notifaction
> when it starts throttling things.
>
This might be tricky, if the meaning is signals or something to the
throttled tasks, since you can have a (or more!) runqueue full of
them... Are we signalling them all? Moreover, they'll get the
notification only after resuming, and it's not guaranteed that this
helps in finding out who is "responsible for" the throttling and... By
the way...

> recording the timestamp of the last occurence of throttling
> in a /proc file would be sufficient, if there were no cgroups.
>
> would it be possible to add a readonly property to the cpu subsystem ?
>
... If you think you're fine with some /proc (and perhaps cpuacct, if
cgroups are being used) readable, I can try to come up with something.

I think that the number of times that throttling fired and the last
throttling instant could be exported this way without much issues.

Do others have some idea and/or comments about that? This is
ABI/interface, and that really scares me! :-P

Thanks and Regards,
Dario

--
<<This happens because I choose it to happen!>> (Raistlin Majere)
----------------------------------------------------------------------
Dario Faggioli, ReTiS Lab, Scuola Superiore Sant'Anna, Pisa (Italy)

http://retis.sssup.it/people/faggioli -- dario.faggioli@xxxxxxxxxx

Attachment: signature.asc
Description: This is a digitally signed message part