Messages in this thread | | | From | Luca Abeni <> | Subject | [PATCH 0/2] SCHED_DEADLINE fixes | Date | Wed, 17 Dec 2014 11:50:30 +0100 |
| |
Hi all,
I noticed some discrepancies between the schedule produced by SCHED_DEADLINE and the expectations from real-time scheduling theory. After some investigations, it turned out that such discrepancies are due to two bugs in deadline.c, which are particularly visible when using global scheduling on multiple CPUs (see the two patches for more details).
I think the first bug (fixed in patch 0001) is particularly critical, because it causes a violation of the SCHED_DEADLINE guarantee (if the total load is smaller than the number of CPUs, there is an upper bound for the response times. This is a well known property for global EDF, but is not respected by SCHED_DEADLINE - see patch 0001 for more details). The second patch is IMHO also important, but less critical.
Luca Abeni (2): Fix migration of SCHED_DEADLINE tasks Avoid double-accounting in case of missed deadlines
kernel/sched/deadline.c | 25 ++++--------------------- 1 file changed, 4 insertions(+), 21 deletions(-)
-- 1.9.1
| |