aboutsummaryrefslogtreecommitdiffstats
path: root/litmus
diff options
context:
space:
mode:
Diffstat (limited to 'litmus')
-rw-r--r--litmus/Kconfig20
-rw-r--r--litmus/Makefile6
-rw-r--r--litmus/debug_trace.c (renamed from litmus/sched_trace.c)9
-rw-r--r--litmus/edf_common.c1
-rw-r--r--litmus/litmus.c4
-rw-r--r--litmus/locking.c2
-rw-r--r--litmus/rt_domain.c4
-rw-r--r--litmus/sched_cedf.c2
-rw-r--r--litmus/sched_gsn_edf.c4
-rw-r--r--litmus/sched_pfair.c2
-rw-r--r--litmus/sched_psn_edf.c4
-rw-r--r--litmus/sched_trace_ohead.c (renamed from litmus/trace.c)2
-rw-r--r--litmus/sched_trace_task.c (renamed from litmus/sched_task_trace.c)14
-rw-r--r--litmus/srp.c2
-rw-r--r--litmus/sync.c2
15 files changed, 38 insertions, 40 deletions
diff --git a/litmus/Kconfig b/litmus/Kconfig
index 94b48e199577..e680382329b6 100644
--- a/litmus/Kconfig
+++ b/litmus/Kconfig
@@ -104,7 +104,7 @@ config FEATHER_TRACE
104 you still need to enable SCHED_TASK_TRACE and/or SCHED_OVERHEAD_TRACE to 104 you still need to enable SCHED_TASK_TRACE and/or SCHED_OVERHEAD_TRACE to
105 actually enable any events. 105 actually enable any events.
106 106
107config SCHED_TASK_TRACE 107config SCHED_TRACE_TASK
108 bool "Trace real-time tasks" 108 bool "Trace real-time tasks"
109 depends on FEATHER_TRACE 109 depends on FEATHER_TRACE
110 default y 110 default y
@@ -118,9 +118,9 @@ config SCHED_TASK_TRACE
118 Say Yes for debugging. 118 Say Yes for debugging.
119 Say No for overhead tracing. 119 Say No for overhead tracing.
120 120
121config SCHED_TASK_TRACE_SHIFT 121config SCHED_TRACE_TASK_SHIFT
122 int "Buffer size for sched_trace_xxx() events" 122 int "Buffer size for sched_trace_xxx() events"
123 depends on SCHED_TASK_TRACE 123 depends on SCHED_TRACE_TASK
124 range 8 13 124 range 8 13
125 default 9 125 default 9
126 help 126 help
@@ -138,7 +138,7 @@ config SCHED_TASK_TRACE_SHIFT
138 10 => 1k events 138 10 => 1k events
139 8 => 512 events 139 8 => 512 events
140 140
141config SCHED_OVERHEAD_TRACE 141config SCHED_TRACE_OVERHEAD
142 bool "Record timestamps for overhead measurements" 142 bool "Record timestamps for overhead measurements"
143 depends on FEATHER_TRACE 143 depends on FEATHER_TRACE
144 default n 144 default n
@@ -146,11 +146,11 @@ config SCHED_OVERHEAD_TRACE
146 Export event stream for overhead tracing. 146 Export event stream for overhead tracing.
147 Say Yes for overhead tracing. 147 Say Yes for overhead tracing.
148 148
149config SCHED_DEBUG_TRACE 149config LITMUS_DEBUG_TRACE
150 bool "TRACE() debugging" 150 bool "TRACE() debugging"
151 default y 151 default y
152 help 152 help
153 Include support for sched_trace_log_messageg(), which is used to 153 Include support for sched_trace_log_messages(), which is used to
154 implement TRACE(). If disabled, no TRACE() messages will be included 154 implement TRACE(). If disabled, no TRACE() messages will be included
155 in the kernel, and no overheads due to debugging statements will be 155 in the kernel, and no overheads due to debugging statements will be
156 incurred by the scheduler. Disable if the overhead is not acceptable 156 incurred by the scheduler. Disable if the overhead is not acceptable
@@ -159,9 +159,9 @@ config SCHED_DEBUG_TRACE
159 Say Yes for debugging. 159 Say Yes for debugging.
160 Say No for overhead tracing. 160 Say No for overhead tracing.
161 161
162config SCHED_DEBUG_TRACE_SHIFT 162config LITMUS_DEBUG_TRACE_SHIFT
163 int "Buffer size for TRACE() buffer" 163 int "Buffer size for TRACE() buffer"
164 depends on SCHED_DEBUG_TRACE 164 depends on LITMUS_DEBUG_TRACE
165 range 14 22 165 range 14 22
166 default 18 166 default 18
167 help 167 help
@@ -184,9 +184,9 @@ config SCHED_DEBUG_TRACE_SHIFT
184 character device node should be created at /dev/litmus/log. The buffer 184 character device node should be created at /dev/litmus/log. The buffer
185 can be flushed using cat, e.g., 'cat /dev/litmus/log > my_log_file.txt'. 185 can be flushed using cat, e.g., 'cat /dev/litmus/log > my_log_file.txt'.
186 186
187config SCHED_DEBUG_TRACE_CALLER 187config LITMUS_DEBUG_TRACE_CALLER
188 bool "Include [function@file:line] tag in TRACE() log" 188 bool "Include [function@file:line] tag in TRACE() log"
189 depends on SCHED_DEBUG_TRACE 189 depends on LITMUS_DEBUG_TRACE
190 default n 190 default n
191 help 191 help
192 With this option enabled, TRACE() prepends 192 With this option enabled, TRACE() prepends
diff --git a/litmus/Makefile b/litmus/Makefile
index 7338180f196f..f98d5ee0ce6a 100644
--- a/litmus/Makefile
+++ b/litmus/Makefile
@@ -24,6 +24,6 @@ obj-$(CONFIG_PLUGIN_PFAIR) += sched_pfair.o
24obj-$(CONFIG_SCHED_CPU_AFFINITY) += affinity.o 24obj-$(CONFIG_SCHED_CPU_AFFINITY) += affinity.o
25 25
26obj-$(CONFIG_FEATHER_TRACE) += ft_event.o ftdev.o 26obj-$(CONFIG_FEATHER_TRACE) += ft_event.o ftdev.o
27obj-$(CONFIG_SCHED_TASK_TRACE) += sched_task_trace.o 27obj-$(CONFIG_SCHED_TRACE_TASK) += sched_trace_task.o
28obj-$(CONFIG_SCHED_DEBUG_TRACE) += sched_trace.o 28obj-$(CONFIG_SCHED_TRACE_OVERHEAD) += sched_trace_ohead.o
29obj-$(CONFIG_SCHED_OVERHEAD_TRACE) += trace.o 29obj-$(CONFIG_LITMUS_DEBUG_TRACE) += debug_trace.o
diff --git a/litmus/sched_trace.c b/litmus/debug_trace.c
index f4171fddbbb1..7ed21d4e7139 100644
--- a/litmus/sched_trace.c
+++ b/litmus/debug_trace.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * sched_trace.c -- record scheduling events to a byte stream. 2 * debug_trace.c -- record debugging trace events on a bytes stream.
3 */ 3 */
4#include <linux/spinlock.h> 4#include <linux/spinlock.h>
5#include <linux/mutex.h> 5#include <linux/mutex.h>
@@ -13,13 +13,12 @@
13 13
14#include <linux/kfifo.h> 14#include <linux/kfifo.h>
15 15
16#include <litmus/sched_trace.h>
17#include <litmus/litmus.h> 16#include <litmus/litmus.h>
18 17
19#define SCHED_TRACE_NAME "litmus/log" 18#define LITMUS_TRACE_NAME "litmus/log"
20 19
21/* Compute size of TRACE() buffer */ 20/* Compute size of TRACE() buffer */
22#define LITMUS_TRACE_BUF_SIZE (1 << CONFIG_SCHED_DEBUG_TRACE_SHIFT) 21#define LITMUS_TRACE_BUF_SIZE (1 << CONFIG_LITMUS_DEBUG_TRACE_SHIFT)
23 22
24/* Max length of one read from the buffer */ 23/* Max length of one read from the buffer */
25#define MAX_READ_LEN (64 * 1024) 24#define MAX_READ_LEN (64 * 1024)
@@ -194,7 +193,7 @@ static struct file_operations log_fops = {
194}; 193};
195 194
196static struct miscdevice litmus_log_dev = { 195static struct miscdevice litmus_log_dev = {
197 .name = SCHED_TRACE_NAME, 196 .name = LITMUS_TRACE_NAME,
198 .minor = MISC_DYNAMIC_MINOR, 197 .minor = MISC_DYNAMIC_MINOR,
199 .fops = &log_fops, 198 .fops = &log_fops,
200}; 199};
diff --git a/litmus/edf_common.c b/litmus/edf_common.c
index 9b44dc2d8d1e..4d67f4b731ac 100644
--- a/litmus/edf_common.c
+++ b/litmus/edf_common.c
@@ -10,7 +10,6 @@
10 10
11#include <litmus/litmus.h> 11#include <litmus/litmus.h>
12#include <litmus/sched_plugin.h> 12#include <litmus/sched_plugin.h>
13#include <litmus/sched_trace.h>
14 13
15#include <litmus/edf_common.h> 14#include <litmus/edf_common.h>
16 15
diff --git a/litmus/litmus.c b/litmus/litmus.c
index 301390148d02..196f2ebc0664 100644
--- a/litmus/litmus.c
+++ b/litmus/litmus.c
@@ -12,10 +12,10 @@
12 12
13#include <litmus/litmus.h> 13#include <litmus/litmus.h>
14#include <litmus/bheap.h> 14#include <litmus/bheap.h>
15#include <litmus/trace.h>
16#include <litmus/rt_domain.h> 15#include <litmus/rt_domain.h>
17#include <litmus/litmus_proc.h> 16#include <litmus/litmus_proc.h>
18#include <litmus/sched_trace.h> 17#include <litmus/sched_trace_task.h>
18#include <litmus/sched_trace_ohead.h>
19 19
20#ifdef CONFIG_SCHED_CPU_AFFINITY 20#ifdef CONFIG_SCHED_CPU_AFFINITY
21#include <litmus/affinity.h> 21#include <litmus/affinity.h>
diff --git a/litmus/locking.c b/litmus/locking.c
index 0c1aa6aa40b7..213c68ec6c61 100644
--- a/litmus/locking.c
+++ b/litmus/locking.c
@@ -3,7 +3,7 @@
3#ifdef CONFIG_LITMUS_LOCKING 3#ifdef CONFIG_LITMUS_LOCKING
4 4
5#include <litmus/sched_plugin.h> 5#include <litmus/sched_plugin.h>
6#include <litmus/trace.h> 6#include <litmus/sched_trace_ohead.h>
7 7
8static int create_generic_lock(void** obj_ref, obj_type_t type, void* __user arg); 8static int create_generic_lock(void** obj_ref, obj_type_t type, void* __user arg);
9static int open_generic_lock(struct od_table_entry* entry, void* __user arg); 9static int open_generic_lock(struct od_table_entry* entry, void* __user arg);
diff --git a/litmus/rt_domain.c b/litmus/rt_domain.c
index d405854cd39c..3b777d539812 100644
--- a/litmus/rt_domain.c
+++ b/litmus/rt_domain.c
@@ -13,11 +13,11 @@
13 13
14#include <litmus/litmus.h> 14#include <litmus/litmus.h>
15#include <litmus/sched_plugin.h> 15#include <litmus/sched_plugin.h>
16#include <litmus/sched_trace.h> 16#include <litmus/sched_trace_task.h>
17 17
18#include <litmus/rt_domain.h> 18#include <litmus/rt_domain.h>
19 19
20#include <litmus/trace.h> 20#include <litmus/sched_trace_ohead.h>
21 21
22#include <litmus/bheap.h> 22#include <litmus/bheap.h>
23 23
diff --git a/litmus/sched_cedf.c b/litmus/sched_cedf.c
index 480c62bc895b..abc2808f1cdc 100644
--- a/litmus/sched_cedf.c
+++ b/litmus/sched_cedf.c
@@ -37,7 +37,7 @@
37#include <litmus/preempt.h> 37#include <litmus/preempt.h>
38#include <litmus/sched_plugin.h> 38#include <litmus/sched_plugin.h>
39#include <litmus/edf_common.h> 39#include <litmus/edf_common.h>
40#include <litmus/sched_trace.h> 40#include <litmus/sched_trace_task.h>
41 41
42#include <litmus/clustered.h> 42#include <litmus/clustered.h>
43 43
diff --git a/litmus/sched_gsn_edf.c b/litmus/sched_gsn_edf.c
index 6ed504f4750e..330c26cfcf0a 100644
--- a/litmus/sched_gsn_edf.c
+++ b/litmus/sched_gsn_edf.c
@@ -17,8 +17,8 @@
17#include <litmus/jobs.h> 17#include <litmus/jobs.h>
18#include <litmus/sched_plugin.h> 18#include <litmus/sched_plugin.h>
19#include <litmus/edf_common.h> 19#include <litmus/edf_common.h>
20#include <litmus/sched_trace.h> 20#include <litmus/sched_trace_task.h>
21#include <litmus/trace.h> 21#include <litmus/sched_trace_ohead.h>
22 22
23#include <litmus/preempt.h> 23#include <litmus/preempt.h>
24 24
diff --git a/litmus/sched_pfair.c b/litmus/sched_pfair.c
index 16f1065bbdca..c97b8d62bba4 100644
--- a/litmus/sched_pfair.c
+++ b/litmus/sched_pfair.c
@@ -20,7 +20,7 @@
20#include <litmus/preempt.h> 20#include <litmus/preempt.h>
21#include <litmus/rt_domain.h> 21#include <litmus/rt_domain.h>
22#include <litmus/sched_plugin.h> 22#include <litmus/sched_plugin.h>
23#include <litmus/sched_trace.h> 23#include <litmus/sched_trace_task.h>
24 24
25#include <litmus/bheap.h> 25#include <litmus/bheap.h>
26 26
diff --git a/litmus/sched_psn_edf.c b/litmus/sched_psn_edf.c
index 8e4a22dd8d6a..ce6981cecb02 100644
--- a/litmus/sched_psn_edf.c
+++ b/litmus/sched_psn_edf.c
@@ -19,8 +19,8 @@
19#include <litmus/preempt.h> 19#include <litmus/preempt.h>
20#include <litmus/sched_plugin.h> 20#include <litmus/sched_plugin.h>
21#include <litmus/edf_common.h> 21#include <litmus/edf_common.h>
22#include <litmus/sched_trace.h> 22#include <litmus/sched_trace_task.h>
23#include <litmus/trace.h> 23#include <litmus/sched_trace_ohead.h>
24 24
25typedef struct { 25typedef struct {
26 rt_domain_t domain; 26 rt_domain_t domain;
diff --git a/litmus/trace.c b/litmus/sched_trace_ohead.c
index 5d77806da647..582b00d216e4 100644
--- a/litmus/trace.c
+++ b/litmus/sched_trace_ohead.c
@@ -4,7 +4,7 @@
4 4
5#include <litmus/ftdev.h> 5#include <litmus/ftdev.h>
6#include <litmus/litmus.h> 6#include <litmus/litmus.h>
7#include <litmus/trace.h> 7#include <litmus/sched_trace_ohead.h>
8 8
9/******************************************************************************/ 9/******************************************************************************/
10/* Allocation */ 10/* Allocation */
diff --git a/litmus/sched_task_trace.c b/litmus/sched_trace_task.c
index 5ef8d09ab41f..f142fac54e3b 100644
--- a/litmus/sched_task_trace.c
+++ b/litmus/sched_trace_task.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * sched_task_trace.c -- record scheduling events to a byte stream 2 * sched_trace_task.c -- record scheduling events to a byte stream
3 */ 3 */
4 4
5#define NO_TASK_TRACE_DECLS 5#define NO_TASK_TRACE_DECLS
@@ -11,12 +11,12 @@
11#include <litmus/ftdev.h> 11#include <litmus/ftdev.h>
12#include <litmus/litmus.h> 12#include <litmus/litmus.h>
13 13
14#include <litmus/sched_trace.h>
15#include <litmus/feather_trace.h> 14#include <litmus/feather_trace.h>
16#include <litmus/ftdev.h> 15#include <litmus/ftdev.h>
16#include <litmus/sched_trace_task.h>
17 17
18 18
19#define NO_EVENTS (1 << CONFIG_SCHED_TASK_TRACE_SHIFT) 19#define NO_EVENTS (1 << CONFIG_SCHED_TRACE_TASK_SHIFT)
20 20
21#define now() litmus_clock() 21#define now() litmus_clock()
22 22
@@ -35,7 +35,7 @@ static int st_dev_can_open(struct ftdev *dev, unsigned int cpu)
35 return cpu_online(cpu) ? 0 : -ENODEV; 35 return cpu_online(cpu) ? 0 : -ENODEV;
36} 36}
37 37
38static int __init init_sched_task_trace(void) 38static int __init init_sched_trace_task(void)
39{ 39{
40 struct local_buffer* buf; 40 struct local_buffer* buf;
41 int i, ok = 0, err; 41 int i, ok = 0, err;
@@ -75,13 +75,13 @@ err_out:
75 return err; 75 return err;
76} 76}
77 77
78static void __exit exit_sched_task_trace(void) 78static void __exit exit_sched_trace_task(void)
79{ 79{
80 ftdev_exit(&st_dev); 80 ftdev_exit(&st_dev);
81} 81}
82 82
83module_init(init_sched_task_trace); 83module_init(init_sched_trace_task);
84module_exit(exit_sched_task_trace); 84module_exit(exit_sched_trace_task);
85 85
86 86
87static inline struct st_event_record* get_record(u8 type, struct task_struct* t) 87static inline struct st_event_record* get_record(u8 type, struct task_struct* t)
diff --git a/litmus/srp.c b/litmus/srp.c
index 2ed4ec12a9d3..5653870e20e9 100644
--- a/litmus/srp.c
+++ b/litmus/srp.c
@@ -9,7 +9,7 @@
9#include <litmus/litmus.h> 9#include <litmus/litmus.h>
10#include <litmus/sched_plugin.h> 10#include <litmus/sched_plugin.h>
11#include <litmus/fdso.h> 11#include <litmus/fdso.h>
12#include <litmus/trace.h> 12#include <litmus/sched_trace_ohead.h>
13 13
14 14
15#ifdef CONFIG_LITMUS_LOCKING 15#ifdef CONFIG_LITMUS_LOCKING
diff --git a/litmus/sync.c b/litmus/sync.c
index bf75fde5450b..bf76d2f778ac 100644
--- a/litmus/sync.c
+++ b/litmus/sync.c
@@ -14,7 +14,7 @@
14#include <litmus/sched_plugin.h> 14#include <litmus/sched_plugin.h>
15#include <litmus/jobs.h> 15#include <litmus/jobs.h>
16 16
17#include <litmus/sched_trace.h> 17#include <litmus/sched_trace_task.h>
18 18
19static DECLARE_COMPLETION(ts_release); 19static DECLARE_COMPLETION(ts_release);
20 20