<div dir="ltr"><div><div>Hi everyone,<br><br>There was a small compilation error due to the early release patch. The 
name EARLY was conflicting with other stuff from the kernel.
<br>It didn't show up when compiling for the KVM image, only on a normal machine.
<br>
<br>mm/slab.c:595: error: redeclaration of enumerator 'EARLY'
<br>include/litmus/rt_param.h:52: note: previous definition of 'EARLY' was here
<br>
<br>I attached a patch for the problem<br><br>Thanks,<br></div><br>Felipe<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/3/12 Björn Brandenburg <span dir="ltr"><<a href="mailto:bbb@mpi-sws.org" target="_blank">bbb@mpi-sws.org</a>></span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
On Mar 6, 2013, at 7:37 PM, Glenn Elliott <<a href="mailto:gelliott@cs.unc.edu">gelliott@cs.unc.edu</a>> wrote:<br>
<br>
> On Mar 6, 2013, at 11:45 AM, Jonathan Herman <<a href="mailto:hermanjl@cs.unc.edu">hermanjl@cs.unc.edu</a>> wrote:<br>
><br>
>> 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.<br>


>><br>
>> 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.<br>
><br>
> 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.<br>


<br>
</div>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.<br>


<span class="HOEnZb"><font color="#888888"><br>
- Björn<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
_______________________________________________<br>
litmus-dev mailing list<br>
<a href="mailto:litmus-dev@lists.litmus-rt.org">litmus-dev@lists.litmus-rt.org</a><br>
<a href="https://lists.litmus-rt.org/listinfo/litmus-dev" target="_blank">https://lists.litmus-rt.org/listinfo/litmus-dev</a><br>
</div></div></blockquote></div><br></div>