aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* GSN-EDF & Core: improve debug TRACE'ing for NP sectionswip-bbbBjoern B. Brandenburg2011-07-28
|
* Litmus core: trace syscall overhead in sched_yield()Bjoern B. Brandenburg2011-07-28
|
* C-EDF/GSN-EDF: fix non-preemptive section supportBjoern B. Brandenburg2011-07-28
| | | | | | | Don't unlink. The job was put into the ready queue when it was previously unlinked. If we remove it from the ready queue, then it won't ever be scheduled again.
* Feather-Trace: Simplify syscall-in overhead tracingBjoern B. Brandenburg2011-07-28
| | | | | Just stick TS_SYSCALL_IN_START into any system call that needs tracing.
* Litmus core: always np.preempt flagBjoern B. Brandenburg2011-07-28
| | | | Avoids getting tasks getting stuck in sched_yield() loops.
* Litmus core: simplify np-section protocolBjoern B. Brandenburg2011-07-28
| | | | | | User a 32-bit word for all non-preemptive section flags. Set the "please yield soon" flag atomically when accessing it on remotely-scheduled tasks.
* PSN-EDF: use FMLP+ priority-boosting orderBjoern B. Brandenburg2011-07-27
| | | | boost by request time, not issue time
* PSN-EDF: add partitioned OMLPBjoern B. Brandenburg2011-07-27
| | | | | Supporting the virtual token turns out to be easy.
* Litmus core: support tie-breaking in priority queueBjoern B. Brandenburg2011-07-27
| | | | | We'd like to have consistent deadline tie-breaking in priority-ordered wait queues, too.
* fixup MPCP-VS: don't priority boost until after virtual spinning is overBjoern B. Brandenburg2011-07-27
| | | | Otherwise there is no benefit to the virtual spinning...
* C-EDF: rename lock -> cluster_lockBjoern B. Brandenburg2011-07-26
| | | | The macro lock conflicts with locking protocols...
* GSN-EDF: avoid double lock acquisition in FMLPBjoern B. Brandenburg2011-07-26
| | | | Extra lock acquisition causes unnecessary overhead.
* GSN-EDF: add global OMLP supportBjoern B. Brandenburg2011-07-26
| | | | | Similar to the FMLP implementation, the only difference is that it uses a hybrid FIFO/priority queue.
* FDSO: raise limit on max. number of resourcesBjoern B. Brandenburg2011-07-26
|
* P-FP: take DPCP migrations into accountBjoern B. Brandenburg2011-07-26
| | | | | Don't trigger BUG_ON()s in corner cases if the DPCP migrates tasks around.
* P-FP: Don't double-account overheads under DPCPBjoern B. Brandenburg2011-07-26
| | | | Don't measure LOCK/UNLOCK while the scheduler is invoked.
* Feather-Trace: adjust IDsBjoern B. Brandenburg2011-07-26
| | | | Ensure that _END - _START = 1. This simplifies ft2csv.
* P-FP: avoid cross-migrationsBjoern B. Brandenburg2011-07-26
| | | | | | | The first attempt at DPCP migrations caused deadlocks if to processors needed to exchange jobs. We avoid this now by first performing the context switch before enqueuing the job in the remote runqueue.
* P-FP: trace more debugging infoBjoern B. Brandenburg2011-07-26
| | | | ...and make per-processor state available in gdb.
* Feather-Trace: record PID fragments for locking overheadsBjoern B. Brandenburg2011-07-25
| | | | | | | We need to be able to figure out overlapping suspensions, etc. So to reuse the existing format, just encode the lower 16bits of the PID in the cpu and task-type fields (which we don't care about when collecting locking overheads).
* fixup: override processor id in feather-traceBjoern B. Brandenburg2011-07-25
|
* Feather-Trace: reassign IDsBjoern B. Brandenburg2011-07-25
|
* locking: use correct timestampBjoern B. Brandenburg2011-07-25
|
* 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.