New feature: sys_null_call()
, a dummy system call that simplifies the process
of determining system call overheads [litmus/litmus.c
].
New feature: support for starting timers on remote CPUs via
hrtimer_start_on()
[kernel/hrtimer.c
].
New feature: support dedicated release handling in GSN-EDF and a
corresponding /proc
interface [litmus/rt_domain.c
, litmus/sched_gsn_edf.c
,
litmus/litmus.c
].
New feature: support IPI latency tracing [litmus/trace.c
].
Warn if a task's priority is compared against itself [litmus/edf_common.c
].
Remove duplicated code in heap_node allocation and allocate heap_node structs
from a dedicated slab [litmus/litmus.c
].
Avoid memory allocation/de-allocation in the release queue handling hot-path
[litmus/rt_domain.c
]
Use per-event hrtimers instead of multiplexing all future releases onto a single timer. Linux's hrtimers are cheap enough to do this, and it removes complexity.
Uninline binomial heap implementation to reduce code size [litmus/heap.c
].
Assorted minor debugging improvements.
Minor code cleanups.
Bugfix: use is_running()
in litmus_schedule()
to test for task state change
race; otherwise plugins might get confused due to unexpected
task_block()
/wake_up()
calls.
Bugfix: avoid deadlock in hrtimer_cancel()
; use hrtimer_try_to_cancel()
instead [litmus/rt_domain.c
].
Bugfix: avoid race that lead to arming the same timer twice
[litmus/rt_domain.c
].
Bugfix: avoid use-after-free race in release_heap
[litmus/rt_domain.c
].
Bugfix: avoid rare deadlock between timer base lock and release lock
[litmus/rt_domain.c
].
Bugfix: fix compilation with CONFIG_SCHED_TASK_TRACE
on sparc64
[include/litmus/sched_trace.h
].
Bugfix: fix Linux execution time accounting in Litmus scheduling class so
that top(1)
and ps(1)
work again [litmus/sched_litmus.c
].
Bugfix: make sure magic sysrq hotkeys do not collide [litmus/litmus.c
].
liblitmus
: switch to scons
build system.
liblitmus
: support x86-64
->i386
cross compilation.
liblitmus
: add cycles
tools to simplify measuring of CPU cycles per
second.
liblitmus
: support null_call()
system call and add null_call
tool (for
system call overhead measurements).
liblitmus
: improved diagnostic output if setsched
fails.
liblitmus
: support fractional costs and periods in rtspin
.
liblitmus
: improve release_ts
with -w
(wait for all tasks) and -f
(wait for specified number of tasks) options.
liblitmus
: remove outdated tests (mode_test
, np_test
, and wait_test
).
liblitmus
: remove sched_trace
support. The removed code will be part of a
future standalone sched_trace
library.
ft_tools
: switch to scons
build system.
ft_tools
: support x86-64
->i386
cross compilation.
ft_tools
: support for IPI latency measurements (SEND_RESCHED
).