From: Wu Zhangjin on
Hi, All

Just made SCHED_DEADLINE run on my YeeLoong laptop ;)

SCHED_DEADLINE made by Dario Faggioli and Michael Trimarchi, is "a new
scheduling class called SCHED_DEADLINE for the Linux kernel. The
scheduling class implements the real-time scheduling algorithm called
Earliest Deadline First (EDF), one of the most common real-time
scheduling algorithms."

Its homepage:

and more information about it is available here:

Thanks very much to the authors, I just cloned it and did some necessary
modification for MIPS to make it work on my YeeLoong laptop with debian
6.0(squeeze), at last, I got a really "deterministic" laptop.

And the information about "SCHED_DEADLINE for MIPS" is listed as

1. sched_deadline for MIPS

I have put it here:

git:// rt/2.6.31/sched-deadline

It is based on:



git:// rt-deadline

and the following commits are added(please get more info from the git

SCHED_DEADLINE: added system calls for MIPS
SCHED_DEADLINE: Fixup of "BUG: scheduling while atomic"

NOTE: If you plan to run it on your board, please remember to add your
board specific RT-preempt support at first.

2. sched_tool for MIPS

git:// rt/schedtool-deadline

The schedtool is based on:


To make the schedtool work on MIPS machine with debian O32 ABI system, I
have fixed the timespec struct and of course, the related system calls'
numbers are added in.

3. Usage (only use YeeLoong as an example)

3.1 Get the latest kernel with RT-preempt and SCHED_DEADLINE support

git:// rt/2.6.31/loongson

3.2 Compile the kernel

A minimal defconfig is provided:


and please refer to:

3.3 Get the schedtool with SCHED_DEADLINE support and compile it

git:// rt/schedtool-deadline

3.4 Run your application with the SCHED_DEADLINE

$ ./schedtool -E -d 100000 -b 10000 -e yes

-E using the SCHED_DEADLINE policy(the old name is SCHED_EDF)
-d deadline
-b budget(runtime)
-e start command with specified policy/priority

Did you want to do some benchmarking on the RT-preempt and
SCHED_DEADLINE for MIPS? please refer to the "Benchmarks and Test Cases
" part of and the "Usage, Evaluation,
Examples" parts of

That's all, Enjoy it!

Best Regards,
Wu Zhangjin

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)
More majordomo info at
Please read the FAQ at