Re: [RFC 7/12][PATCH] SCHED_DEADLINE: signal delivery whenoverrunning

From: Peter Zijlstra
Date: Mon Dec 28 2009 - 09:24:11 EST


On Fri, 2009-10-16 at 17:44 +0200, Raistlin wrote:
> Starting from this commit, the user can ask to receive a SIGXCPU signal
> every time the task runtime is overrun or a scheduling deadline is missed.
> This is done by means of the sched_flags field already present in
> sched_param_ex.
>
> A runtime overrun will be quite common, e.g. due to coarse execution time
> accounting, wrong parameter assignement, etc.
> A deadline miss --since the deadlines the scheduler sees are ``scheduling
> deadlines'' which have not necessarily to be equal to task's deadlines-- is
> much more unlikely, and should only happen in an overloaded system.

Right, I think its much better to not do this in posix-cpu-timers.c,
that code is shite.

Its probably possible to set SIGXCPU pending and raise TIF_SIGPENDING
from within the scheduler code, and that will be triggered when we
return to userspace.

That also gets rid of that coarse execution time accounting muck, since
the scheduler has ns accurate accounting.

--
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/