[LITMUS^RT] Updates to LITMUS^RT, liblitmus, and feather-trace-tools
Björn Brandenburg
bbb at mpi-sws.org
Sun Mar 20 20:17:26 CET 2016
Dear all,
I’ve pushed more changes to LITMUS^RT and liblitmus. These patches add major new features.
In particular, I’ve merged the basic reservation-based scheduling infrastructure that previously existed in the wip-reservations branch. However, the code has seen substantial changes since the earlier preview version. There’s a tutorial on how to work with the new reservations here:
https://github.com/LITMUS-RT/liblitmus/blob/master/doc/howto-use-resctl.md
A summary of all changes is provided at the end of the email.
Again, please help with testing.
> On 08 Mar 2016, at 17:26, Björn Brandenburg <bbb at mpi-sws.org> wrote:
>
> @UNC: can you please contribute to the testing effort, especially on ARM?
>
Is anyone at UNC still reading this email list? I haven’t heard anything at all…
Thanks,
Björn
Here are the new patches in the kernel:
dbf173a Add partitioned reservation-based scheduler plugin (P-RES)
2a38056 Add basic generic reservation-based scheduling infrastructure
095f515 Add reservation configuration types to rt_param.h
8c9a840 LITMUS^RT syscall: expose sys_reservation_create() via ioctl()
c1e58e8 Add reservation creation API to plugin interface & syscalls
59a6e9e hrtimer integration: properly trace late-added timers
e9b22ab Hook into hrtimer to report large latencies
8d35f99 Add KConfig options for timer latency warnings
6a09acc Feather-Trace: cosmetic change in latency callback
include/linux/hrtimer.h | 3 +
include/litmus/ctrlpage.h | 6 +
include/litmus/reservations/alloc.h | 15 +
include/litmus/reservations/budget-notifier.h | 50 +++
include/litmus/reservations/polling.h | 19 +
include/litmus/reservations/reservation.h | 223 ++++++++++
include/litmus/reservations/table-driven.h | 23 +
include/litmus/rt_param.h | 41 ++
include/litmus/sched_plugin.h | 8 +
kernel/time/hrtimer.c | 41 +-
litmus/Kconfig | 24 +-
litmus/Makefile | 4 +
litmus/ctrldev.c | 6 +
litmus/litmus.c | 10 +
litmus/reservations/Makefile | 3 +
litmus/reservations/alloc.c | 143 +++++++
litmus/reservations/budget-notifier.c | 26 ++
litmus/reservations/core.c | 392 +++++++++++++++++
litmus/reservations/polling.c | 256 ++++++++++++
litmus/reservations/table-driven.c | 269 ++++++++++++
litmus/sched_plugin.c | 13 +
litmus/sched_pres.c | 578 ++++++++++++++++++++++++++
litmus/trace.c | 3 +-
23 files changed, 2152 insertions(+), 4 deletions(-)
Changes to liblitmus:
f7aa7b6 Add documentation for resctl
e742799 Add -b (background cache-thrashing loop) option to rtspin
a409d6c Add memory thrashing option to rtspin
e2c555d Add -u (underrun) to rtspin
0d3feb8 Add -R (create sporadic reservation) flag to rtspin
13559d1 Add -R (create sporadic reservation) flag to rt_launch
be24daf resctl: support specifying open intervals [$start,$end)
3d2d58b resctl: support parsing priority values larger than 2^32
9dcbb55 resctl: default to max. priority for table-driven reservations
3015c39 Add resctrl, a tool for setting up reservations
626d8bd Add reservation_create() LITMUS^RT system call
.gitignore | 7 ++
Makefile | 5 +-
bin/resctl.c | 256 ++++++++++++++++++++++++++++++++++++++++++++++++
bin/rt_launch.c | 30 +++++-
bin/rtspin.c | 141 +++++++++++++++++++++++---
doc/howto-use-resctl.md | 144 +++++++++++++++++++++++++++
include/litmus.h | 8 ++
src/syscalls.c | 8 ++
8 files changed, 580 insertions(+), 19 deletions(-)
More information about the litmus-dev
mailing list