aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--arch/arm/Kconfig8
-rw-r--r--arch/arm/include/asm/timex.h2
-rw-r--r--arch/arm/include/asm/unistd.h3
-rw-r--r--arch/arm/kernel/calls.S14
-rw-r--r--arch/arm/kernel/smp.c4
-rw-r--r--arch/arm/mach-realview/include/mach/timex.h27
-rw-r--r--arch/x86/Kconfig8
-rw-r--r--arch/x86/include/asm/entry_arch.h1
-rw-r--r--arch/x86/include/asm/feather_trace.h17
-rw-r--r--arch/x86/include/asm/feather_trace_32.h115
-rw-r--r--arch/x86/include/asm/feather_trace_64.h124
-rw-r--r--arch/x86/include/asm/hw_irq.h3
-rw-r--r--arch/x86/include/asm/irq_vectors.h7
-rw-r--r--arch/x86/include/asm/processor.h4
-rw-r--r--arch/x86/include/asm/unistd_32.h6
-rw-r--r--arch/x86/include/asm/unistd_64.h4
-rw-r--r--arch/x86/kernel/Makefile2
-rw-r--r--arch/x86/kernel/cpu/intel_cacheinfo.c17
-rw-r--r--arch/x86/kernel/entry_64.S2
-rw-r--r--arch/x86/kernel/ft_event.c118
-rw-r--r--arch/x86/kernel/irqinit.c3
-rw-r--r--arch/x86/kernel/smp.c29
-rw-r--r--arch/x86/kernel/syscall_table_32.S14
-rw-r--r--fs/exec.c13
-rw-r--r--fs/inode.c2
-rw-r--r--include/linux/fs.h19
-rw-r--r--include/linux/hardirq.h4
-rw-r--r--include/linux/hrtimer.h32
-rw-r--r--include/linux/sched.h20
-rw-r--r--include/linux/smp.h5
-rw-r--r--include/linux/tick.h5
-rw-r--r--include/litmus/affinity.h80
-rw-r--r--include/litmus/bheap.h77
-rw-r--r--include/litmus/binheap.h206
-rw-r--r--include/litmus/budget.h35
-rw-r--r--include/litmus/clustered.h44
-rw-r--r--include/litmus/debug_trace.h58
-rw-r--r--include/litmus/edf_common.h25
-rw-r--r--include/litmus/fdso.h81
-rw-r--r--include/litmus/feather_buffer.h94
-rw-r--r--include/litmus/feather_trace.h65
-rw-r--r--include/litmus/fp_common.h105
-rw-r--r--include/litmus/fpmath.h147
-rw-r--r--include/litmus/ftdev.h55
-rw-r--r--include/litmus/jobs.h9
-rw-r--r--include/litmus/litmus.h312
-rw-r--r--include/litmus/litmus_proc.h25
-rw-r--r--include/litmus/locking.h46
-rw-r--r--include/litmus/preempt.h164
-rw-r--r--include/litmus/rt_domain.h182
-rw-r--r--include/litmus/rt_param.h283
-rw-r--r--include/litmus/sched_plugin.h113
-rw-r--r--include/litmus/sched_trace.h342
-rw-r--r--include/litmus/srp.h28
-rw-r--r--include/litmus/trace.h145
-rw-r--r--include/litmus/trace_irq.h14
-rw-r--r--include/litmus/unistd_32.h23
-rw-r--r--include/litmus/unistd_64.h37
-rw-r--r--include/litmus/wait.h58
-rw-r--r--include/trace/events/litmus.h423
-rw-r--r--include/trace/ftrace.h5
-rw-r--r--kernel/exit.c4
-rw-r--r--kernel/fork.c7
-rw-r--r--kernel/hrtimer.c95
-rw-r--r--kernel/printk.c14
-rw-r--r--kernel/sched.c152
-rw-r--r--kernel/sched_fair.c3
-rw-r--r--kernel/sched_rt.c15
-rw-r--r--kernel/softirq.c3
-rw-r--r--kernel/time/tick-sched.c47
-rw-r--r--litmus/Kconfig303
-rw-r--r--litmus/Makefile33
-rw-r--r--litmus/affinity.c42
-rw-r--r--litmus/bheap.c314
-rw-r--r--litmus/binheap.c388
-rw-r--r--litmus/budget.c113
-rw-r--r--litmus/clustered.c111
-rw-r--r--litmus/ctrldev.c160
-rw-r--r--litmus/edf_common.c200
-rw-r--r--litmus/fdso.c306
-rw-r--r--litmus/fp_common.c119
-rw-r--r--litmus/ft_event.c43
-rw-r--r--litmus/ftdev.c446
-rw-r--r--litmus/jobs.c73
-rw-r--r--litmus/litmus.c579
-rw-r--r--litmus/litmus_proc.c347
-rw-r--r--litmus/locking.c236
-rw-r--r--litmus/preempt.c137
-rw-r--r--litmus/rt_domain.c349
-rw-r--r--litmus/sched_cedf.c857
-rw-r--r--litmus/sched_gsn_edf.c1030
-rw-r--r--litmus/sched_litmus.c330
-rw-r--r--litmus/sched_pfair.c1074
-rw-r--r--litmus/sched_pfp.c1751
-rw-r--r--litmus/sched_plugin.c227
-rw-r--r--litmus/sched_psn_edf.c999
-rw-r--r--litmus/sched_task_trace.c272
-rw-r--r--litmus/sched_trace.c252
-rw-r--r--litmus/srp.c305
-rw-r--r--litmus/sync.c152
-rw-r--r--litmus/trace.c300
-rw-r--r--litmus/uncachedev.c102
103 files changed, 16165 insertions, 40 deletions
diff --git a/Makefile b/Makefile
index 64562abe90a..f4b38f39651 100644
--- a/Makefile
+++ b/Makefile
@@ -708,7 +708,7 @@ export mod_strip_cmd
708 708
709 709
710ifeq ($(KBUILD_EXTMOD),) 710ifeq ($(KBUILD_EXTMOD),)
711core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/ 711core-y += kernel/ mm/ fs/ ipc/ security/ crypto/ block/ litmus/
712 712
713vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \ 713vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
714 $(core-y) $(core-m) $(drivers-y) $(drivers-m) \ 714 $(core-y) $(core-m) $(drivers-y) $(drivers-m) \
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 3c3b868948a..6dc9a2f42ab 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2214,3 +2214,11 @@ source "security/Kconfig"
2214source "crypto/Kconfig" 2214source "crypto/Kconfig"
2215 2215
2216source "lib/Kconfig" 2216source "lib/Kconfig"
2217
2218config ARCH_HAS_SEND_PULL_TIMERS
2219 def_bool n
2220
2221config ARCH_HAS_FEATHER_TRACE
2222 def_bool n
2223
2224source "litmus/Kconfig"
diff --git a/arch/arm/include/asm/timex.h b/arch/arm/include/asm/timex.h
index 3be8de3adab..8a102a383a3 100644
--- a/arch/arm/include/asm/timex.h
+++ b/arch/arm/include/asm/timex.h
@@ -16,9 +16,11 @@
16 16
17typedef unsigned long cycles_t; 17typedef unsigned long cycles_t;
18 18
19#ifndef get_cycles
19static inline cycles_t get_cycles (void) 20static inline cycles_t get_cycles (void)
20{ 21{
21 return 0; 22 return 0;
22} 23}
24#endif
23 25
24#endif 26#endif
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index c60a2944f95..23ae09ffc49 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -403,6 +403,9 @@
403#define __NR_sendmmsg (__NR_SYSCALL_BASE+374) 403#define __NR_sendmmsg (__NR_SYSCALL_BASE+374)
404#define __NR_setns (__NR_SYSCALL_BASE+375) 404#define __NR_setns (__NR_SYSCALL_BASE+375)
405 405
406#define __NR_LITMUS (__NR_SYSCALL_BASE+376)
407#include <litmus/unistd_32.h>
408
406/* 409/*
407 * The following SWIs are ARM private. 410 * The following SWIs are ARM private.
408 */ 411 */
diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
index 9943e9e74a1..c0de805e4ea 100644
--- a/arch/arm/kernel/calls.S
+++ b/arch/arm/kernel/calls.S
@@ -385,6 +385,20 @@
385 CALL(sys_syncfs) 385 CALL(sys_syncfs)
386 CALL(sys_sendmmsg) 386 CALL(sys_sendmmsg)
387/* 375 */ CALL(sys_setns) 387/* 375 */ CALL(sys_setns)
388 CALL(sys_set_rt_task_param)
389 CALL(sys_get_rt_task_param)
390 CALL(sys_complete_job)