Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | P-FP: fix wrong memset() | Bjoern Brandenburg | 2016-03-08 | |
| | ||||
* | Don't preempt before time check in sleep_until_next_release() | Bjoern Brandenburg | 2016-03-08 | |
| | | | | Avoid preempting jobs that are about to go to sleep soon anyway. | |||
* | Pick non-zero syscall ID start range | Bjoern Brandenburg | 2016-03-08 | |
| | | | | To avoid interfering with Linux's magic reserved IOCTL numbers | |||
* | Expose LITMUS^RT system calls via control page ioctl() | Bjoern Brandenburg | 2016-03-08 | |
| | | | | | | | Rationale: make LITMUS^RT ops available in a way that does not create merge conflicts each time we rebase LITMUS^RT on top of a new kernel version. This also helps with portability to different architectures, as we no longer need to patch each architecture's syscall table. | |||
* | Merge pull request #6 from Mutinifni/master | Björn Brandenburg | 2016-03-08 | |
|\ | | | | | | | | | Revamped hrtimer_start_on() support Use smp_call_function_single_async() instead of custom IPI. | |||
| * | Revamped hrtimer_start_on() support | Pratyush Patel | 2016-02-09 | |
| | | | | | | | | | | | | This patch modifies the previous implementation of hrtimer_start_on() by now using smp_call_function_single_async() to arm hrtimers on remote CPU's. | |||
| * | Revert "Add hrtimer_start_on() support" | Pratyush Patel | 2016-02-07 | |
| | | | | | | | | This reverts commit 5014e7011964ff46b2d73cf91a05ed9eed5a8fa2. | |||
* | | Free before setting NULL to prevent memory leak | Mahircan Gul | 2016-02-08 | |
|/ | ||||
* | Fix RCU locking in sys_get_rt_task_param() | Bjoern Brandenburg | 2015-12-18 | |
| | | | | | sys_get_rt_task_param() is rarely used and apparently attracted some bitrot. | |||
* | Add alternate complete_job() default implementation | Bjoern Brandenburg | 2015-12-18 | |
| | | | | | | | Let jobs sleep like regular Linux tasks by suspending and waking them with a one-shot timer. Plugins can opt into using this implementation instead of the classic complete_job() implementation (or custom implementations). | |||
* | Export job release time and job sequence number in ctrl page | Bjoern Brandenburg | 2015-12-16 | |
| | ||||
* | ftdev: respect O_NONBLOCK flag in ftdev_read() | Bjoern Brandenburg | 2015-12-16 | |
| | | | | Don't block if userspace wants to go on doing something else. | |||
* | sched_trace: record exec_time in ST_COMPLETION records | Bjoern Brandenburg | 2015-12-16 | |
| | ||||
* | Merge pull request #4 from geoffret/ctrlPageDeadlines | Björn Brandenburg | 2015-12-16 | |
|\ | | | | | Expose current deadline in control page | |||
| * | Adds control page deadline offset | Geoffrey | 2015-12-08 | |
| | | ||||
| * | Adds deadline field to control page and updates it when setting up jobs for ↵ | Geoffrey | 2015-12-08 | |
|/ | | | | release. | |||
* | Fix __NR_syscalls for ARM | Namhoon Kim | 2015-11-10 | |
| | | | | | | __NR_syscalls must be a multiple of 4 for ARM. This patch adds padding to __NR_syscalls and fixes the missing NR_litmus_syscalls in include/litmus/unistd_32.h. | |||
* | Add ARM syscall def for get_current_budgetv2015.1 | Bjoern Brandenburg | 2015-09-07 | |
| | ||||
* | Add x86 syscall defs for get_current_budget | Bjoern Brandenburg | 2015-09-07 | |
| | ||||
* | LITMUS^RT Core: add get_current_budget() system call | Bjoern Brandenburg | 2015-09-07 | |
| | | | | | Allow userspace to figure out the used-up and remaining budget of a task. | |||
* | Add PD^2 scheduler plugin2015.1 | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Add C-EDF scheduler plugin | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Add P-FP scheduler plugin | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Add GSN-EDF scheduler plugin | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Add PSN-EDF scheduler plugin | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Hook into kernel/exit.c to force exiting RT tasks into best-effort mode | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Protect LITMUS^RT tasks from re-nicing | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | Assigning a nice value to LITMUS^RT tasks is meaningless. Bail out early. | |||
* | Don't call set_tsk_need_resched() on remote LITMUS^RT task | Bjoern Brandenburg | 2015-08-09 | |
| | | | | This patch fixes a BUG_ON() in litmus/preempt.c. | |||
* | Hook into SCHED_DEADLINE to protect LITMUS^RT tasks | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | SCHED_DEADLINE should not preempt LITMUS^RT tasks, as the LITMUS^RT scheduling class is positioned above the SCHED_DEADLINE policy. | |||
* | Hook into rt scheduling class to protect LITMUS^RT tasks | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | | The rt scheduling class thinks it's the highest-priority scheduling class around, next to SCHED_DEADLINE. It is not in LITMUS^RT. Don't go preempting remote cores that run SCHED_LITMUS tasks. | |||
* | Don't trigger load balancer in scheduler tick for LITMUS^RT | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Hook into finish_switch() | Bjoern Brandenburg | 2015-08-09 | |
| | | | | To keep track of stack usage and to notify plugin, if necessary. | |||
* | Reset SCHED_LITMUS scheduling class on fork | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Block sched_setaffinity() for SCHED_LITMUS tasks | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Integrate LITMUS^RT scheduling class with sched_setscheduler | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Disable cut-to-CFS optimization in Linux scheduler | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | Global plugins require that the plugin be called even if there currently is no real-time task executing on the local core. | |||
* | Integrate LITMUS^RT with try_to_wake_up() path | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Make LITMUS^RT scheduling class the highest-priority scheduling class | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | | Needs to be above stop_machine_class for legacy reasons; the main plugins were developed before stop_machine_class was introduced and assume that they are the highest-priority scheduling class. | |||
* | Add LITMUS^RT scheduling class in kernel/sched/Makefile | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Introduce LITMUS^RT runqueue dummy into struct rq | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Integrate SRP ceiling blocking callback with Linux scheduler | Bjoern Brandenburg | 2015-08-09 | |
| | | | | Check whether a suspension is required at end of schedule(). | |||
* | Hookup sched_trace_XXX() tracing in Linux scheduler | Bjoern Brandenburg | 2015-08-09 | |
| | | | | This patch adds context switch tracing to the main Linux scheduler. | |||
* | Augment rt_task() with is_realtime() | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | | | | | | | Whenever the kernel checks for rt_task() to avoid delaying real-time tasks, we want it to also not delay LITMUS^RT tasks. Hence, most calls to rt_task() should be matched by an equivalent call to is_realtime(). Notably, this affects the implementations of select() and nanosleep(), which use timer_slack_ns when setting up timers for non-real-time tasks. | |||
* | Hook into fork(), exec(), and exit() | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | Allow LITMUS^RT to do some work when a process is created or terminated. | |||
* | Call sched_state_task_picked() from pick_next_task_stop() | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | Otherwise, the scheduler state machine becomes confused (and goes into a rescheduling loop) when stop-machine is triggered. | |||
* | Integrate preemption state machine with Linux scheduler | Bjoern Brandenburg | 2015-08-09 | |
| | | | | Track when a processor is going to schedule "soon". | |||
* | Record LITMUS^RT timestamp in ftrace records | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | Patch updates ftrace.h to record a litmus_clock() time stamp in ftrace records. | |||
* | Move trace point definition to litmus/litmus.c | Bjoern Brandenburg | 2015-08-09 | |
| | | | | | | | | If !CONFIG_SCHED_TASK_TRACE, but CONFIG_SCHED_LITMUS_TRACEPOINT, then we still need to define the tracepoint structures. This patch should be integrated with the earlier sched_task_trace.c patches during one of the next major rebasing efforts. | |||
* | Add LITMUS^RT syscalls for x86 | Bjoern Brandenburg | 2015-08-09 | |
| | ||||
* | Add LITMUS^RT syscalls for ARM | Bjoern Brandenburg | 2015-08-09 | |
| |