| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
| |
functionality
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes are:
1. Fix a potential race condition with budget replenishment in GEDF
reservations
2. Fix bug where release_jobs_before_now() could race with itself and
corrupt the release heap state (the conditional that checked for
a non-empty queue was prior to lock aquisition, and another
thread could potentially clear the queue while we spun).
3. Fix a problem with incorrect HRTIMER_MODE in rt_domain. With a
preemptible kernel, these need to explicitly expire in a hard
interrupt context (new with LITMUS-RT on 5.4).
4. Fix a logging bug in rt_domain where non-existant variable
`rh->timer` was being printed rather than `rt->timer`.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Untested
|
|
|
|
| |
Moved sched_litmus back to the top scheduling class
|
| |
|
|
|
| |
Scheduling timers need to expire in a hard IRQ context which must be explicitly requested with Linux 5.4.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
P-RES doesn't appear to use `prev` for anything besides sanity
checks, so fix should not and does not appear to break any of
the logical correctness.
|
|
|
|
|
|
|
|
| |
- Updated the C-EDF and PFAIR scheduler plugins so that they should be
able to handle the case when their schedule functions are passed a
NULL pointer in place of prev. They can handle tasks without
crashing, but I have not gone to any length to ensure their behavior
is completely correct.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Fixed a bug where some new balancing code wasn't commented out when
it needed to be. (It wasn't in the version of Linux that the previous
version of LITMUS was based on, so I missed it earlier.)
- The GSN-EDF plugin can now be activated, and runs tasks without
crashing (though I haven't verified that it schedules stuff in the
correct order yet).
- *All remaining plugins probably need to be modified in the same was
as the GSN-EDF plugin*. Specifically, the "prev" argument to the
"<plugin>_schedule(...)" function may be NULL, and the plugin must be
able to handle such a case!
|
|
|
|
|
|
|
|
|
|
|
| |
- This change addresses additional changes that are needed to LITMUS
code so that the kernel is able to compile.
- The kernel is now able to compile.
- I will probably squash this commit with the previous commit sometime
later, so that all of the LITMUS-updating changes are in one commit
and easy to see, *if* this kernel works.
|
|
- Added the LITMUS^RT source files from the most recent version of
LITMUS (based on the old kernel).
- This change does *not* actually make use of any of the new files,
because I wanted to make sure that any changes for getting LITMUS to
actually work are clearly visible in future commits. If I made any
such changes before committing the files themselves, then it wouldn't
be as easy to see what needed to change in the LITMUS source files,
and the large number of changes would make it more difficult to see
what needed to change in the base Linux sources, too.
|