[PATCH 00/14] sched: SCHED_DEADLINE v9

From: Juri Lelli
Date: Thu Nov 07 2013 - 08:44:25 EST


Hello everyone,

SCHED_DEADLINE patchset v9, less than a month after last version [1]!

Changes w.r.t. v8:

- rebase on top of 3.12;
- all comments from Peter Zijlstra and Ingo Molnar applied (thanks!):
+ auxiliary functions for UP/SMP cases
+ add a smp_rmb to match dl_set_overload smp_wmb
+ different clocks for deadlines and runtime need further study
+ amend the comment about yield_task_dl semantic
+ use an accessor to read the rq clock
+ clarify 06/14 changelog (why we want to specify periods != deadlines)

The development is taking place at:
https://github.com/jlelli/sched-deadline

branch: sched-dl-V9-rebase (this patchset on top of tip/master).

Check the repositories frequently if you're interested, and feel free to
e-mail me for any issue you run into.

Test applications:
https://github.com/gbagnoli/rt-app
https://github.com/jlelli/schedtool-dl

Development mailing list: linux-dl; you can subscribe from here:
http://feanor.sssup.it/mailman/listinfo/linux-dl
or via e-mail (send a message to linux-dl-request@xxxxxxxxxxxxxx with
just the word `help' as subject or in the body to receive info).

The code was being jointly developed by ReTiS Lab (http://retis.sssup.it)
and Evidence S.r.l (http://www.evidence.eu.com) in the context of the ACTORS
EU-funded project (http://www.actors-project.eu) and the S(o)OS EU-funded
project (http://www.soos-project.eu/). Development is now supported by the
JUNIPER EU-funded project [2].

As usual, any kind of feedback is welcome and appreciated.

Thanks in advice and regards,

- Juri

[1] http://lwn.net/Articles/376502, http://lwn.net/Articles/353797,
http://lwn.net/Articles/412410, http://lwn.net/Articles/490944,
http://lwn.net/Articles/498472, http://lwn.net/Articles/521091,
http://lwn.net/Articles/537388, http://lwn.net/Articles/570293

[2] http://www.juniper-project.org/page/overview

Dario Faggioli (9):
sched: add sched_class->task_dead.
sched: add extended scheduling interface.
sched: SCHED_DEADLINE structures & implementation.
sched: SCHED_DEADLINE avg_update accounting.
sched: add schedstats for -deadline tasks.
sched: add latency tracing for -deadline tasks.
sched: drafted deadline inheritance logic.
sched: add bandwidth management for sched_dl.
sched: add sched_dl documentation.

Harald Gustafsson (1):
sched: add period support for -deadline tasks.

Juri Lelli (3):
sched: SCHED_DEADLINE SMP-related data structures & logic.
sched: make dl_bw a sub-quota of rt_bw
sched: speed up -dl pushes with a push-heap.

Peter Zijlstra (1):
rtmutex: turn the plist into an rb-tree.

Documentation/scheduler/sched-deadline.txt | 196 ++++
arch/arm/include/asm/unistd.h | 2 +-
arch/arm/include/uapi/asm/unistd.h | 3 +
arch/arm/kernel/calls.S | 3 +
arch/x86/syscalls/syscall_32.tbl | 3 +
arch/x86/syscalls/syscall_64.tbl | 3 +
include/linux/init_task.h | 10 +
include/linux/rtmutex.h | 18 +-
include/linux/sched.h | 122 +-
include/linux/sched/deadline.h | 26 +
include/linux/sched/rt.h | 3 +-
include/linux/sched/sysctl.h | 11 +
include/linux/syscalls.h | 7 +
include/uapi/linux/sched.h | 1 +
kernel/fork.c | 8 +-
kernel/futex.c | 2 +
kernel/hrtimer.c | 3 +-
kernel/rtmutex-debug.c | 8 +-
kernel/rtmutex.c | 164 ++-
kernel/rtmutex_common.h | 22 +-
kernel/sched/Makefile | 4 +-
kernel/sched/core.c | 674 ++++++++++-
kernel/sched/cpudeadline.c | 216 ++++
kernel/sched/cpudeadline.h | 33 +
kernel/sched/deadline.c | 1666 ++++++++++++++++++++++++++++
kernel/sched/debug.c | 46 +
kernel/sched/rt.c | 2 +-
kernel/sched/sched.h | 150 +++
kernel/sched/stop_task.c | 2 +-
kernel/sysctl.c | 7 +
kernel/trace/trace_sched_wakeup.c | 45 +-
kernel/trace/trace_selftest.c | 28 +-
32 files changed, 3363 insertions(+), 125 deletions(-)
create mode 100644 Documentation/scheduler/sched-deadline.txt
create mode 100644 include/linux/sched/deadline.h
create mode 100644 kernel/sched/cpudeadline.c
create mode 100644 kernel/sched/cpudeadline.h
create mode 100644 kernel/sched/deadline.c

--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/