Re: [PATCH] DRTL kernel 2.6.32-rc3 : SCHED_EDF, DI RT-Mutex, Deadline Based Interrupt Handlers

From: Claudio Scordino
Date: Thu Oct 22 2009 - 05:34:20 EST


Soumya K S ha scritto:
Hello All,

We would like to present a patch on Deployment specific Real-Time
Linux, topic discussed in LinuxCon 2009
<http://events.linuxfoundation.org/lc09d17>

The developed framework allows user to specify the real-time
strategies for a specific real-time scenario. User specifies
configurations like scheduling policy, Deadline-miss Fault-tolerance
limit, interrupt priorities, etc. Real-time applications use onetime
gateway to notify kernel that they require real-time response. All
applications use existing POSIX APIs. DRTL scheduler is time-aware and
uses EDF as the scheduling policy.

The patch consists of Time aware scheduler having SCHED_EDF as the
scheduling policy, Deadline based scheduling for Interrupt handlers,
Deadline Inheritance support for RT-Mutexes.

The patch is for the kernel version 2.6.32-rc3. It has been tested on
OMAP3530, ATMEL AT91SAM9261 and X86 platforms.

We look forward for support and feedback about
DRTL <http://docs.google.com/fileview?id=0BzLQtQ1qAO7uYjYyN2QwNGUtYWE2YS00MDc1LWExYWUtZTliNjNjNmZiZTZj&hl=en>
and the patch for its feasibility, scalability and performance.

Many Thanks,
Soumya KS
Shubhro Sinha

Hi,

FYI, a patch to add EDF scheduling to Linux has been already proposed in September (see http://lkml.org/lkml/2009/9/22/186), discussed on mailing list and presented with a talk at the last Real-Time Linux Workshop (RTLWS - http://www.osadl.org/Dresden-2009.rtlws11-dresden-2009.0.html).

The patch was initially called "SCHED_EDF". Then, on suggestion of Peter, the name has been changed to "SCHED_DEADLINE" and the code moved to a public git repository (http://gitorious.org/sched_deadline/sched-deadline).

Recently, the patch has been re-submitted to LKML (see http://lkml.org/lkml/2009/10/16/161) with many issues fixed. Among them: a new behavior of fork(), a new syscall for periodic tasks, flags to signal deadline misses and budget overruns. All these changes come from the comments and the feedback got on mailing list and at the workshop.

At a first glance, your patch extends sched_param (which may lead to compatibility problems with old code), it does not support SMP platforms, and it changes the sched_rt code instead of adding a new scheduling class.

For the reasons above, I think that we should stick with SCHED_DEADLINE, eventually integrating some parts of your code into that project.

Best regards,

Claudio


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