[LITMUS^RT] prop/edf-early-release
Glenn Elliott
gelliott at cs.unc.edu
Wed May 1 20:47:17 CEST 2013
Thanks Felipe! I haven't had any problems on my hardware. I suppose we're using different .configs?
-Glenn
On May 1, 2013, at 2:40 PM, Felipe Cerqueira <felipeqcerqueira at gmail.com> wrote:
> Hi everyone,
>
> There was a small compilation error due to the early release patch. The name EARLY was conflicting with other stuff from the kernel.
> It didn't show up when compiling for the KVM image, only on a normal machine.
>
> mm/slab.c:595: error: redeclaration of enumerator 'EARLY'
> include/litmus/rt_param.h:52: note: previous definition of 'EARLY' was here
>
> I attached a patch for the problem
>
> Thanks,
>
> Felipe
>
>
> 2013/3/12 Björn Brandenburg <bbb at mpi-sws.org>
>
> On Mar 6, 2013, at 7:37 PM, Glenn Elliott <gelliott at cs.unc.edu> wrote:
>
> > On Mar 6, 2013, at 11:45 AM, Jonathan Herman <hermanjl at cs.unc.edu> wrote:
> >
> >> Distinguishing between sporadic, periodic, and early release tasks has also been an issue in my plugins. I have usually been forced to assume periodic, but inevitably someone wants to see early release results in the graphs. Thumbs up.
> >>
> >> The task wake_up code in a few of the plugins assumes a sporadic model. This code would also have to be changed for full periodic support.
> >
> > I pushed another patch to the prop/edf-early-release branch to include Jonathan's requested changes for full periodic support. Note that periodic jobs MUST end with sys_complete_job()---comments are included to that effect. SPORADIC has also been made the default release behavior, maintaining Litmus's current functionality.
>
> I'm happy to merge this now on a "good now is better than perfect later" basis, but I still think that the SPORADIC semantics (increment job number using arbitrary heuristics) is broken and that we need better sporadic support in the future. In particular, we should have a way to distinguish whether a wakeup is a true job release (i.e., wakeup from waiting on a socket or a file descriptor corresponding to a device) or whether it is a self-suspension that should not trigger a job release (i.e, page fault, locking-related suspensions, talking to the X11 server, etc.). Unfortunately, such information isn't easily available to the scheduler in Linux.
>
> - Björn
>
>
> _______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev
>
> <enum.patch>_______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20130501/4ac3c081/attachment.html>
More information about the litmus-dev
mailing list