aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* ftdev: don't hold lock while sleepingBjoern B. Brandenburg2011-07-25
| | | | Holding the lock prevents other tasks from opening the device.
* fixup: trace suspension in MPCP_VS waitBjoern B. Brandenburg2011-07-25
|
* locking: trace system call entry/exit costBjoern B. Brandenburg2011-07-25
|
* fixup: PCP/DPCP add copious amount of loggingBjoern B. Brandenburg2011-07-25
|
* fixup: P-FP migration codeBjoern B. Brandenburg2011-07-25
| | | | Don't double-lock
* fixup: PCP called with preemptions offBjoern B. Brandenburg2011-07-25
|
* fixup: MPCP_VS don't forget to unlockBjoern B. Brandenburg2011-07-25
|
* P-FP: support job migrationsBjoern B. Brandenburg2011-07-25
| | | | | When scheduling, make sure the currently scheduled task still belongs to this partition.
* feather-trace: reject ill-sized writesBjoern B. Brandenburg2011-07-24
| | | | | Only accept writes that look like they might contain full timestamps.
* feather-trace: let userspace add overhead eventsBjoern B. Brandenburg2011-07-23
| | | | | This will be useful for measuring locking-related overheads that are partially recorded in userspace.
* ftdev: let bufffer-specific code handle writes from userspaceBjoern B. Brandenburg2011-07-23
| | | | | This allows us to splice in information into logs from events that were recorded in userspace.
* ftdev: remove event activation hackBjoern B. Brandenburg2011-07-23
| | | | | Instead of doing the hackisch 'write commands to device' thing, let's just use a real ioctl() interface.
* fixup: fix comile error in TRACE()Bjoern B. Brandenburg2011-07-23
|
* Add support for the DPCP to the P-FP plugin.Bjoern B. Brandenburg2011-07-21
|
* Add internal support for the PCP in preparation of the DPCP.Bjoern B. Brandenburg2011-07-21
|
* Make sure priority-boosting is in effectBjoern B. Brandenburg2011-07-21
| | | | | | ... before virtual spinning starts. This avoids a virtually spinning job from being preempted by a newly released job just before a global request is issued.
* Add support for MPCP-VS to the P-FP plugin.Bjoern B. Brandenburg2011-07-21
|
* Add MPCP implementation to P-FP pluginBjoern B. Brandenburg2011-07-21
|
* Add priority-ordered wait_queue_t implementationBjoern B. Brandenburg2011-07-21
| | | | Will be used by MPCP implementation.
* Adapt FMLP+ priority boosting order in P-FP plugin.Bjoern B. Brandenburg2011-07-21
| | | | Generic priority-points also clear the way for xPCP variants.
* Add constants for mutex locking protocolsBjoern B. Brandenburg2011-07-21
|
* Port P-FP FMLP implementation to new APIBjoern B. Brandenburg2011-07-18
| | | | Let unlocking task perform the queue management.
* Improve FMLP queue management.Glenn Elliott2011-07-18
| | | | | | | | | | The next owner of a FMLP-protected resource is dequeued from the FMLP FIFO queue by unlock() (when the resource is freed by the previous owner) instead of performing the dequeue by the next owner immediately after it has been woken up. This simplifies the code a little bit and also reduces potential spinlock contention.
* bugfix: release master CPU must signal task was pickedBjoern B. Brandenburg2011-02-12
|
* P-FP: preempt if there is higher-priority pending workBjoern B. Brandenburg2011-02-10
| | | | The preemption check must check the correct queue.
* P-FP: add release master supportBjoern B. Brandenburg2011-02-10
|
* PSN-EDF: add release master supportBjoern B. Brandenburg2011-02-10
| | | | We can give up a processor under partitioning, too.
* C-EDF: add release master supportBjoern B. Brandenburg2011-02-10
| | | | As with GSN-EDF, do not insert release master into CPU heap.
* P-FP: implement bitmask-based priority queueBjoern B. Brandenburg2011-02-10
|
* bugfix: add processors in order of increasing indices to clustersBjoern B. Brandenburg2011-02-08
| | | | | Pfair expects to look at processors in order of increasing index. Without this patch, Pfair could deadlock in certain situations.
* Pfair: various fixes concerning release timersBjoern B. Brandenburg2011-02-08
|
* P-FP: add new partitioned fixed-priority pluginBjoern B. Brandenburg2011-02-08
| | | | | | Currently, this is basically the PSN-EDF plugin with a bit of renaming going on. The priority queue implementation and priority boosting implementation should change next.
* Litmus core: add support for fixed prioritiesBjoern B. Brandenburg2011-02-07
| | | | This will allow us to implement fixed-priority scheduling
* Feather-Trace: keep track of release latencyBjoern B. Brandenburg2011-02-05
|
* Feather-Trace: trace locking-related suspensionsBjoern B. Brandenburg2011-02-05
|
* Pfair: add release master support.Bjoern B. Brandenburg2011-02-05
|
* Pfair: add support for true sporadic releasesBjoern B. Brandenburg2011-02-05
| | | | | | This patch also converts Pfair to implement early releasing such that no timer wheel is required anymore. This removes the need for a maximum period restriction.
* Feather-Trace: start with the largest permissible rangeBjoern B. Brandenburg2011-02-05
| | | | MAX_ORDER is 11, but this is about number of records, not number of pages.
* Pfair: remove sporadic_release flagBjoern B. Brandenburg2011-02-01
| | | | | Instead of having an extra flag, Pfair should just infer sporadic release based on deadlines like other plugins, too.
* Pfair: support clustered schedulingBjoern B. Brandenburg2011-02-01
| | | | | | | Just like C-EDF is a global scheduler that is split across several clusters, Pfair can be applied on a per-cluster basis. This patch changes the Pfair implementation to enable clustering based on the recently added generic clustering support.
* Litmus core: add generic clustering supportBjoern B. Brandenburg2011-02-01
| | | | | Inspired by the existing C-EDF code, this generic version will build clusters of CPUs based on a given cache level.
* Litmus core: extract userspace interface from C-EDFBjoern B. Brandenburg2011-02-01
| | | | | Make the cluster size configuration in C-EDF generic so that it can be used by other clustered schedulers.
* Feather-Trace: rename locking trace pointsBjoern B. Brandenburg2011-02-01
| | | | | Since we don't expect to trace more than one lock type at a time, having protocol-specific trace points is not required.
* fdso: pass userpsace config argument to object constructorBjoern B. Brandenburg2011-02-01
| | | | | | | | | | | | As Glenn pointed out, it is useful for some protocols (e.g., k-exclusion protocols) to know the userspace configuration at object creation time. This patch changes the fdso API to pass the parameter to the object constructor, which is then in turn passed to the lock allocater. The return code from the lock allocater is passed to userspace in return. This also fixes some null pointer dereferences in the FDSO code found by the test suite in liblitmus.
* GSN-EDF: re-implement FMLP supportBjoern B. Brandenburg2011-02-01
| | | | This introduces the global FMLP based on the generic locking layer.
* PSN-EDF: re-implement FMLP supportBjoern B. Brandenburg2011-02-01
| | | | | Implement the partitioned FMLP with priority boosting based on the generic lock API.
* EDF: support priority boostingBjoern B. Brandenburg2011-02-01
| | | | While we are at it, simplify edf_higher_prio() a bit.
* FMLP: remove old implementationBjoern B. Brandenburg2011-02-01
|
* SRP: port to new generic locking APIBjoern B. Brandenburg2011-02-01
| | | | | This re-enables SRP support under PSN-EDF and demonstrates how the new locking API should be used.
* Litmus core: replace FMLP & SRP system calls with generic syscallsBjoern B. Brandenburg2011-02-01
| | | | | This renders the FMLP and SRP unfunctional until they are ported to the new locking API.