| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
| |
Under nested priority-ordered locking protocols with dynamic group locks,
it is possible that priority inheritance can trigger the inheriting task
to acquire a resource. Thus, flush any triggered wakeups prior to suspending
for a lock.
|
|
|
|
|
| |
This patch fixes a compilation bug that occurs
when nested locking is disabled.
|
|
|
|
|
|
|
|
| |
The I-KGLP was a pre-publish name for the R^2DGLP locking protocol
developed by B. Ward et al. ("Replica-Request Priority Donation:
A Real-Time Progress Mechanism for Global Locking Protocols"
presented at RTCSA 2012). This patch renames ikglp-named identifiers
to r2dglp-named identifiers.
|
|
|
|
|
|
|
|
| |
This patch adds more feature-rich budget tracking/enforcement
features. Budget tracking is now controlled by a state machine.
Each task can elect to use a different budget policy. Hooks
are in place to implement bandwidth inheritance (BWI) and
virtually exclusive resources.
|
|
|
|
| |
Clean up formatting in locking.c
|
|
|
|
|
|
|
|
|
|
| |
Auxiliary tasks helper threads to real-time tasks. These helper
tasks may inherit the priority of the real-time task(s) in the
process only if that real-time task is blocked/suspended (and it
is not suspending because the job has completed). Otherwise,
these threads are scheduled with a default priority greater than
normal Linux threads, but lower than any other real-time task, including
klmirqd threads.
|
|
|
|
|
|
|
| |
Extends the core parts of locking protocols in Litmus.
* Adds dynamic group lock interface (internal and sys calls).
* Adds helper functions for waking tasks.
* Adds tracing for these new features.
|
|
This patch adds the core of LITMUS^RT:
- library functionality (heaps, rt_domain, prioritization, etc.)
- budget enforcement logic
- job management
- system call backends
- virtual devices (control page, etc.)
- scheduler plugin API (and dummy plugin)
This code compiles, but is not yet integrated with the rest of Linux.
|