aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
Commit message (Collapse)AuthorAge
* adaptive: reweight if the total system capacity is exceeded.RTAS08Bjoern B. Brandenburg2007-10-26
| | | | Track total utilization for the task set.
* seems to be working like thisBjoern B. Brandenburg2007-10-19
|
* litmus: Rework scheduler signals implementationBjoern B. Brandenburg2007-10-17
| | | | This approach should both make the scheduler signals list more flexible and fix the locking dependency detected by lockdep.
* adaptive: Aaron's fixes, clean out debug, and merge headerBjoern B. Brandenburg2007-10-17
| | | | | | This patch is a collection of several changes. It includes Aaron's fixes to prevent division by zero, makes it possible to disable the optimizer debug output, and merges the header file into the scheduler implementation since it is not being used anywhere else.
* Changed the scheduling algorithms to include more usefull tagsAaron Block2007-10-10
|
* FIXME: hot fixes to get it to runBjoern B. Brandenburg2007-10-09
| | | | | Take out signal delivery from scheduler, circular locking possible. Remove duplicate, unprotected sched_trace_job_completion()
* adaptive: only send signal when requested.Bjoern B. Brandenburg2007-10-09
|
* litmus-core: add scheduler_signal() infrastructureBjoern B. Brandenburg2007-10-09
| | | | use it to send weight change notifications
* adaptive: increase+decrease goodnessBjoern B. Brandenburg2007-10-09
| | | | Complete reweighting rules.
* sched_trace: add sched_trace_weight_error()Bjoern B. Brandenburg2007-10-09
| | | | Export the accuracy of the error prediction to user space.
* adaptive: add a ton of debugging outputBjoern B. Brandenburg2007-10-09
| | | And fix some small errors.
* adaptive: get rid of weight-estimator slope misconceptionBjoern B. Brandenburg2007-10-09
| | | | This concept is redundant with the per-service-level weights. Also fix the get_sl() macro.
* adaptive: debuggingBjoern B. Brandenburg2007-10-08
|
* adaptive: good night...Bjoern B. Brandenburg2007-10-08
|
* adaptive: take out all synchronization supportBjoern B. Brandenburg2007-10-08
| | | | Get rid of inherited GSN synchronization functions.
* adaptive: check for pending weight changes on scheduler tickBjoern B. Brandenburg2007-10-08
|
* adaptive: optimizer compilesBjoern B. Brandenburg2007-10-08
| | | | enacting weight changes is still missing
* adpative: massive work on the optimizerBjoern B. Brandenburg2007-10-07
| | | | Not yet complete.
* litmus: add qsort list manipulation functionBjoern B. Brandenburg2007-10-07
| | | | The adaptive optimizer needs to sort lists.
* adaptive: add linear weight_transfer metricBjoern B. Brandenburg2007-10-07
| | | | Adds slope and intercept to adaptive tasks and setup code.
* compile fixBjoern B. Brandenburg2007-10-07
| | | | use correct functions
* adaptive: fix weight change metricBjoern B. Brandenburg2007-10-07
| | | | It does not depend on absolute error, but on relative change.
* sched_trace: Store size of entry in header to ease parsing.Bjoern B. Brandenburg2007-10-07
| | | | | This will make it possible to skip entries that are unknown or not of interest.
* adaptive: error threshold must test against absolute errorBjoern B. Brandenburg2007-10-07
| | | | Negative errors must trigger reweighting, too.
* adaptive: introduce optimizer hooksBjoern B. Brandenburg2007-10-07
| | | | Predict task weight, introduce optimizer run.
* Cleanup: Remove job stats that no scheduler uses anyway.Bjoern B. Brandenburg2007-10-07
| | | | No use in supporting something that isn't used.
* adaptive: introduce fixed point mathBjoern B. Brandenburg2007-10-07
| | | | | Introduces fixed point math header stuff and start of predictor support in sched_adaptive.c
* Add some infrastructure for reweighting.Bjoern B. Brandenburg2007-10-05
| | | Track error of allocation, prepare service level changes.
* Add service level changes to sched_trace.Bjoern B. Brandenburg2007-10-05
| | | Record when tasks get a new service level.
* Fix service level system call.Bjoern B. Brandenburg2007-10-05
| | | | This fixes some stupid typos.
* adaptive: set period and wcet based on first service levelBjoern B. Brandenburg2007-10-04
| | | | Make sure that the RT task starts out in a correct service level.
* adaptive: introduce service level system callsBjoern B. Brandenburg2007-10-04
| | | | | Allow user space to set up service levels, also allow RT tasks to query their current service level.
* Import race fix.Bjoern B. Brandenburg2007-10-04
|\
| * Fix long standing set_rt_params race by disallowing it.Bjoern B. Brandenburg2007-10-04
| | | | | | | | | | | | There really is no reason why RT params of a RT task should be changed. The sporadic task model does not allow for it, the schedulers don't expect it, and adaptive tasks will be implemented differently.
* | adaptive: introduce service levelBjoern B. Brandenburg2007-10-04
| | | | | | | | This patch adds fields for service levels to the rt_param struct.
* | Wrap task teardown.Bjoern B. Brandenburg2007-10-04
| | | | | | | | Provide a place to do generic tear-down work.
* | Fix RT scheduler tickBjoern B. Brandenburg2007-10-04
| | | | | | | | Update adaptive plugin initialization.
* | Merge with qemu branchBjoern B. Brandenburg2007-10-04
|\|
| * Cleanup: Get rid of unneeded algo_tick indirection.Bjoern B. Brandenburg2007-10-04
| | | | | | | | | | Since all plugins use rt_scheduler_tick() anyway, we might as well get rid of the field.
* | adaptive: allow jobs to overrunBjoern B. Brandenburg2007-10-04
| | | | | | | | Do not forcefully preempt tasks.
* | Remove some really old left-overs.Bjoern B. Brandenburg2007-10-04
| | | | | | | | This is a long-overdue cleanup.`
* | Add adaptive scheduler based on GSN-EDF.Bjoern B. Brandenburg2007-10-04
|/ | | | This only introduces the necessary source files.
* Fix sleeping behavior.Bjoern B. Brandenburg2007-10-04
| | | | | | A dublication of prepare_task_for_next_period() caused GSN-EDF to wrongly calculate the next deadline of new jobs. This was fixed for the RTAS experiments.
* bugfix: don't forget to requeue linked task at the end of RT modeBjoern B. Brandenburg2007-09-25
| | | | This caused RT tasks to get lost.
* Clean up TRACEs.Bjoern B. Brandenburg2007-09-25
|
* bugfix: don't use stale linked flagBjoern B. Brandenburg2007-09-25
| | | | | | When a job completion occured at the end of real-time mode it was possible for unlink to be called with entry->linked == NULL. As a solution, don't use a flag for linked, since it becomes stale too easily.
* Add more debug output to crash site.Bjoern B. Brandenburg2007-09-25
| | | | Where is it being called from?
* Bugfix: don't requeue blocking tasks.Bjoern B. Brandenburg2007-09-25
| | | | | Once the task gets scheduled even though it should be blocked, the system will crash.
* Re-enable BUG_ON() in wake_up function.Bjoern B. Brandenburg2007-09-23
| | | | Also some debug infos.
* Use preempt_enable_no_resched() before calling schedule() anyway.Bjoern B. Brandenburg2007-09-23
|