aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
| * | ARM: Fix bad merge bd1274dc005 (Merge branch 'v6v7' into devel)Russell King2012-10-11
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Commit 774c096bf9e49 (ARM: v6/v7 cache: allow cache calls to be optimized) got dropped when the merge conflicts for moving the contents of the files in commit 753790e713d (ARM: move cache/processor/fault glue to separate include files) was fixed up in merge bd1274dc005 (Merge branch 'v6v7' into devel). This puts the change back. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Christopher Kenna <cjk@cs.unc.edu>
* | Merge remote-tracking branch 'litmus-rt/wip-mc' into pandaboard-litmus-mcChristopher Kenna2012-10-11
|\|
| * Server tasks stay linked when client tasks release.Jonathan Herman2012-10-10
| |
| * Moved budget accounting into MC plugin.Jonathan Herman2012-10-09
| | | | | | | | This commit is broken as it allows locking tasks to early release.
| * Integrated color chunking into the mc plugin.Jonathan Herman2012-10-09
| |
| * A task's blocking time no longer takes from its server's budget.Jonathan Herman2012-10-09
| |
| * Task completion times now based on user-space job execution times.Jonathan Herman2012-10-08
| |
| * Fixed scheduling overhead macros for mixed-criticality.Jonathan Herman2012-10-07
| |
| * Removed race condition in lock_acquired code.Jonathan Herman2012-10-07
| |
| * Correct spelling error in conditional include.Christopher Kenna2012-10-07
| |
| * Architecture dependent uncachable control page.Christopher Kenna2012-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While working on an ODROID-X (Samsung Exynos4412 ARM Cortex-A9), I experienced non-determinism when reading and writing values to the LITMUS^RT control page. Writes to the control page from user- (kernel-) space where not always reflected in kernel- (user-) space. Neither restricting the task to run on a single CPU nor inserting general memory barriers (with mb()) fixed the problem. Mapping the control page as uncachable in both kernel and user space did fix the problem, which is what this patch does. Also, since vunmap() cannot be called from an interrupt context, I had to add a workqueue that unmaps and frees the control page when it is no longer needed. (On my system, exit_litmus() was called from interrupt context while the kernel reaped the task_struct.) Conflicts: include/litmus/rt_param.h litmus/litmus.c Does not make the color control page uncachable yet! Signed-off-by: Christopher Kenna <cjk@cs.unc.edu>
| * Integrated group locking with mixed-criticality.Jonathan Herman2012-10-06
| |
| * fix debug message.Christopher Kenna2012-10-05
| |
| * Add more logging and a new proc entry.Christopher Kenna2012-10-05
| |
| * Coloring on the ARM.Christopher Kenna2012-10-05
| |
| * Add ifdef's for CONFIG_PLUGIN_MC and CONFIG_MERGE_TIMERS.Christopher Kenna2012-10-04
| |
| * Add include to fix compilation error.Christopher Kenna2012-10-04
| |
| * Merge branch 'wip-mc' of ssh://rtsrv.cs.unc.edu/home/litmus/litmus-rt into ↵Jonathan Herman2012-10-03
| |\ | | | | | | | | | wip-mc
| | * Clean up the LITMUS color device.Christopher Kenna2012-10-02
| | |
| | * Fix compilation of the perf tool.Christopher Kenna2012-10-02
| | |
| | * Fix perf tools compile bug.Christopher Kenna2012-10-02
| | |
| | * Decrease max number of colors and fix typos.Christopher Kenna2012-10-02
| | |
| * | Moved user-space state of tasks into new rt_param.user_job.Jonathan Herman2012-10-03
| |/ | | | | | | | | | | Both sched_color and sched_mc assumed seperate kernel and userspace views of job states, where the kernel view is used for scheduling while the userspace view is used for statistics (tardiness etc). This commit merges both approaches.
| * Create per-task containers only when budget enforcing.Jonathan Herman2012-10-01
| |
| * Fixed sched_color run issues.Jonathan Herman2012-09-30
| |\
| | * Move task time accounting into the complete_job method.Jonathan Herman2012-09-28
| | |
| | * Cleanup. Remove this commitJonathan Herman2012-09-27
| | |
| | * Properly track max_exec_time to output in task_exit record.Jonathan Herman2012-09-27
| | |
| | * Added exit and tardy hooks.Jonathan Herman2012-09-27
| | |
| | * Summarize schedulability with final recordJonathan Herman2012-09-27
| | | | | | | | | | | | | | | | | | | | | Conflicts: include/litmus/rt_param.h litmus/sched_color.c
| | * Store exec time in completion recordJonathan Herman2012-09-27
| | |
| | * Track tasks average execution time, drop in TASK_EXIT recordJonathan Herman2012-09-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: include/litmus/rt_param.h litmus/jobs.c litmus/sched_color.c litmus/sched_task_trace.c
| | * Add the time to the task_exit eventChristopher Kenna2012-09-27
| | |
| | * Add task_exit event that records max exec time under color plugin.Christopher Kenna2012-09-27
| | | | | | | | | | | | | | | | | | | | | Conflicts: include/litmus/rt_param.h litmus/sched_color.c
| | * Initial commitJonathan Herman2012-09-21
| | |
| | * EDF priority tie-breaks.Glenn Elliott2012-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of tie-breaking by PID (which is a static priority tie-break), we can tie-break by other job-level-unique parameters. This is desirable because tasks are equaly affected by tardiness since static priority tie-breaks cause tasks with greater PID values to experience the most tardiness. There are four tie-break methods: 1) Lateness. If two jobs, J_{1,i} and J_{2,j} of tasks T_1 and T_2, respectively, have equal deadlines, we favor the job of the task that had the worst lateness for jobs J_{1,i-1} and J_{2,j-1}. Note: Unlike tardiness, lateness may be less than zero. This occurs when a job finishes before its deadline. 2) Normalized Lateness. The same as #1, except lateness is first normalized by each task's relative deadline. This prevents tasks with short relative deadlines and small execution requirements from always losing tie-breaks. 3) Hash. The job tuple (PID, Job#) is used to generate a hash. Hash values are then compared. A job has ~50% chance of winning a tie-break with respect to another job. Note: Emperical testing shows that some jobs can have +/- ~1.5% advantage in tie-breaks. Linux's built-in hash function is not totally a uniform hash. 4) PIDs. PID-based tie-break used in prior versions of Litmus.
| | * Improve readability of EDF comparisons.Glenn Elliott2012-09-21
| | | | | | | | | | | | | | | | | | Restructured the EDF task comparison code to improve readability. Recoded chained logical expression embedded in return statement into a series of if/else blocks.
| | * Do processor state transitions in schedule_tail().Glenn Elliott2012-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes a bug in Litmus where processor scheduling states could become corrupted. Corruption can occur when a just-forked thread is externally forced to be scheduled by SCHED_LITMUS before this just-forked thread can complete post-fork processing. Specifically, before schedule_tail() has completed.
| | * Include a missing header file.Christopher Kenna2012-09-20
| | |
| | * Fix changed task_struct field name.Christopher Kenna2012-09-20
| | |
| * | Resolved merge bugs.Jonathan Herman2012-09-29
| | |
| * | Merge branch 'wip-color' into wip-mcJonathan Herman2012-09-29
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: include/litmus/budget.h include/litmus/litmus.h include/litmus/rt_param.h include/litmus/sched_trace.h include/litmus/trace.h include/trace/events/litmus.h litmus/Makefile litmus/budget.c litmus/ftdev.c litmus/jobs.c litmus/litmus.c litmus/locking.c litmus/preempt.c litmus/rt_domain.c litmus/sched_gsn_edf.c litmus/trace.c
| | * | Summarize schedulability with final recordJonathan Herman2012-05-15
| | | |
| | * | Chunking for locking protocolJonathan Herman2012-05-15
| | | |
| | * | Commented out two rare bugs which the scheduler can recover fromJonathan Herman2012-05-14
| | | |
| | * | Per job blockingJonathan Herman2012-05-14
| | | |
| | * | Store exec time in completion recordJonathan Herman2012-05-13
| | | |
| | * | Allow self conflictsJonathan Herman2012-05-13
| | | |
| | * | Can disable nonpreemptivityJonathan Herman2012-05-13
| | | |
| | * | Track tasks average execution time, drop in TASK_EXIT recordJonathan Herman2012-05-09
| | | |