aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern B. Brandenburg <bbb@cs.unc.edu>2007-10-04 21:28:51 -0400
committerBjoern B. Brandenburg <bbb@cs.unc.edu>2007-10-04 21:28:51 -0400
commit197eb6ab50c2b60963bc62a10501df0a0fdb133a (patch)
tree1c653fda1df621bff39d6d38bf07da95efb05720
parentd74881ffa37434d2ce5455e9e2086292c6128d56 (diff)
Cleanup: Get rid of unneeded algo_tick indirection.
Since all plugins use rt_scheduler_tick() anyway, we might as well get rid of the field.
-rw-r--r--include/linux/sched_plugin.h1
-rw-r--r--kernel/litmus.c2
-rw-r--r--kernel/sched.c2
-rw-r--r--kernel/sched_edf_hsb.c3
-rw-r--r--kernel/sched_global_edf.c6
-rw-r--r--kernel/sched_gsn_edf.c3
-rw-r--r--kernel/sched_part_edf.c3
-rw-r--r--kernel/sched_pfair.c3
-rw-r--r--kernel/sched_plugin.c1
-rw-r--r--kernel/sched_psn_edf.c3
10 files changed, 9 insertions, 18 deletions
diff --git a/include/linux/sched_plugin.h b/include/linux/sched_plugin.h
index 61080d2a73..fa0716f0eb 100644
--- a/include/linux/sched_plugin.h
+++ b/include/linux/sched_plugin.h
@@ -110,7 +110,6 @@ struct sched_plugin {
110 110
111 /* scheduler invocation */ 111 /* scheduler invocation */
112 scheduler_tick_t scheduler_tick; 112 scheduler_tick_t scheduler_tick;
113 scheduler_tick_t algo_scheduler_tick;
114 schedule_t schedule; 113 schedule_t schedule;
115 finish_switch_t finish_switch; 114 finish_switch_t finish_switch;
116 115
diff --git a/kernel/litmus.c b/kernel/litmus.c
index 1e4db2cd20..6b5022ea94 100644
--- a/kernel/litmus.c
+++ b/kernel/litmus.c
@@ -353,7 +353,7 @@ reschedule_check_t __sched rt_scheduler_tick(void)
353 * It is the plugin's tick handler' job to detect quantum 353 * It is the plugin's tick handler' job to detect quantum
354 * boundaries in pfair. 354 * boundaries in pfair.
355 */ 355 */
356 return curr_sched_plugin->algo_scheduler_tick(); 356 return curr_sched_plugin->scheduler_tick();
357} 357}
358 358
359asmlinkage spolicy sys_sched_setpolicy(spolicy newpolicy) 359asmlinkage spolicy sys_sched_setpolicy(spolicy newpolicy)
diff --git a/kernel/sched.c b/kernel/sched.c
index 8eba9b61cd..154d78e5d1 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -3285,7 +3285,7 @@ void scheduler_tick(void)
3285 * schedule 3285 * schedule
3286 */ 3286 */
3287 TS_PLUGIN_TICK_START; 3287 TS_PLUGIN_TICK_START;
3288 if (curr_sched_plugin->scheduler_tick() == FORCE_RESCHED) 3288 if (rt_scheduler_tick() == FORCE_RESCHED)
3289 set_tsk_need_resched(p); 3289 set_tsk_need_resched(p);
3290 TS_PLUGIN_TICK_END; 3290 TS_PLUGIN_TICK_END;
3291 3291
diff --git a/kernel/sched_edf_hsb.c b/kernel/sched_edf_hsb.c
index 07820054b7..a286fe1c8c 100644
--- a/kernel/sched_edf_hsb.c
+++ b/kernel/sched_edf_hsb.c
@@ -1766,8 +1766,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
1766#define INIT_SCHED_PLUGIN (struct sched_plugin){\ 1766#define INIT_SCHED_PLUGIN (struct sched_plugin){\
1767 .plugin_name = "EDF-HSB",\ 1767 .plugin_name = "EDF-HSB",\
1768 .ready_to_use = 1,\ 1768 .ready_to_use = 1,\
1769 .algo_scheduler_tick = hsb_scheduler_tick,\ 1769 .scheduler_tick = hsb_scheduler_tick,\
1770 .scheduler_tick = rt_scheduler_tick,\
1771 .prepare_task = hsb_prepare_task,\ 1770 .prepare_task = hsb_prepare_task,\
1772 .sleep_next_period = edf_sleep_next_period,\ 1771 .sleep_next_period = edf_sleep_next_period,\
1773 .tear_down = hsb_tear_down,\ 1772 .tear_down = hsb_tear_down,\
diff --git a/kernel/sched_global_edf.c b/kernel/sched_global_edf.c
index 3ca46c1fb9..7d28a697f1 100644
--- a/kernel/sched_global_edf.c
+++ b/kernel/sched_global_edf.c
@@ -429,8 +429,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
429#define INIT_SCHED_PLUGIN (struct sched_plugin){\ 429#define INIT_SCHED_PLUGIN (struct sched_plugin){\
430 .plugin_name = "Global EDF",\ 430 .plugin_name = "Global EDF",\
431 .ready_to_use = 1,\ 431 .ready_to_use = 1,\
432 .algo_scheduler_tick = gedf_scheduler_tick,\ 432 .scheduler_tick = gedf_scheduler_tick,\
433 .scheduler_tick = rt_scheduler_tick,\
434 .prepare_task = gedf_prepare_task,\ 433 .prepare_task = gedf_prepare_task,\
435 .sleep_next_period = edf_sleep_next_period,\ 434 .sleep_next_period = edf_sleep_next_period,\
436 .tear_down = gedf_tear_down,\ 435 .tear_down = gedf_tear_down,\
@@ -536,8 +535,7 @@ static int gedf_np_check_resched(rt_domain_t *edf)
536#define INIT_SCHED_PLUGIN_NP (struct sched_plugin){\ 535#define INIT_SCHED_PLUGIN_NP (struct sched_plugin){\
537 .plugin_name = "Non-Preemptive Global EDF",\ 536 .plugin_name = "Non-Preemptive Global EDF",\
538 .ready_to_use = 1,\ 537 .ready_to_use = 1,\
539 .algo_scheduler_tick = gedf_np_scheduler_tick,\ 538 .scheduler_tick = gedf_np_scheduler_tick,\
540 .scheduler_tick = rt_scheduler_tick,\
541 .prepare_task = gedf_prepare_task,\ 539 .prepare_task = gedf_prepare_task,\
542 .sleep_next_period = edf_sleep_next_period,\ 540 .sleep_next_period = edf_sleep_next_period,\
543 .tear_down = gedf_tear_down,\ 541 .tear_down = gedf_tear_down,\
diff --git a/kernel/sched_gsn_edf.c b/kernel/sched_gsn_edf.c
index 5ff2670727..1236204379 100644
--- a/kernel/sched_gsn_edf.c
+++ b/kernel/sched_gsn_edf.c
@@ -773,8 +773,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
773#define INIT_SCHED_PLUGIN (struct sched_plugin){ \ 773#define INIT_SCHED_PLUGIN (struct sched_plugin){ \
774 .plugin_name = "GSN-EDF", \ 774 .plugin_name = "GSN-EDF", \
775 .ready_to_use = 1, \ 775 .ready_to_use = 1, \
776 .algo_scheduler_tick = gsnedf_scheduler_tick, \ 776 .scheduler_tick = gsnedf_scheduler_tick, \
777 .scheduler_tick = rt_scheduler_tick, \
778 .prepare_task = gsnedf_prepare_task, \ 777 .prepare_task = gsnedf_prepare_task, \
779 .sleep_next_period = edf_sleep_next_period, \ 778 .sleep_next_period = edf_sleep_next_period, \
780 .tear_down = gsnedf_tear_down, \ 779 .tear_down = gsnedf_tear_down, \
diff --git a/kernel/sched_part_edf.c b/kernel/sched_part_edf.c
index dee761525c..e478ed102e 100644
--- a/kernel/sched_part_edf.c
+++ b/kernel/sched_part_edf.c
@@ -309,8 +309,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
309#define INIT_SCHED_PLUGIN (struct sched_plugin) {\ 309#define INIT_SCHED_PLUGIN (struct sched_plugin) {\
310 .plugin_name = "Partitioned EDF",\ 310 .plugin_name = "Partitioned EDF",\
311 .ready_to_use = 1,\ 311 .ready_to_use = 1,\
312 .algo_scheduler_tick = part_edf_scheduler_tick,\ 312 .scheduler_tick = part_edf_scheduler_tick,\
313 .scheduler_tick = rt_scheduler_tick,\
314 .prepare_task = part_edf_prepare_task,\ 313 .prepare_task = part_edf_prepare_task,\
315 .sleep_next_period = edf_sleep_next_period,\ 314 .sleep_next_period = edf_sleep_next_period,\
316 .tear_down = part_edf_tear_down,\ 315 .tear_down = part_edf_tear_down,\
diff --git a/kernel/sched_pfair.c b/kernel/sched_pfair.c
index 4fa6ba2a8f..9b98b018b3 100644
--- a/kernel/sched_pfair.c
+++ b/kernel/sched_pfair.c
@@ -478,8 +478,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
478#define INIT_PFAIR_PLUGIN (struct sched_plugin){\ 478#define INIT_PFAIR_PLUGIN (struct sched_plugin){\
479 .plugin_name = "PFAIR",\ 479 .plugin_name = "PFAIR",\
480 .ready_to_use = 1,\ 480 .ready_to_use = 1,\
481 .algo_scheduler_tick = pfair_scheduler_tick,\ 481 .scheduler_tick = pfair_scheduler_tick,\
482 .scheduler_tick = rt_scheduler_tick,\
483 .prepare_task = pfair_prepare_task,\ 482 .prepare_task = pfair_prepare_task,\
484 .sleep_next_period = 0,\ 483 .sleep_next_period = 0,\
485 .tear_down = pfair_tear_down,\ 484 .tear_down = pfair_tear_down,\
diff --git a/kernel/sched_plugin.c b/kernel/sched_plugin.c
index 10af80bd2a..3c7d6c0842 100644
--- a/kernel/sched_plugin.c
+++ b/kernel/sched_plugin.c
@@ -93,7 +93,6 @@ long litmus_dummy_pi_block(struct pi_semaphore *sem,
93sched_plugin_t linux_sched_plugin = { 93sched_plugin_t linux_sched_plugin = {
94 .plugin_name = "Linux", 94 .plugin_name = "Linux",
95 .ready_to_use = 1, 95 .ready_to_use = 1,
96 .algo_scheduler_tick = 0,
97 .scheduler_tick = litmus_dummy_scheduler_tick, 96 .scheduler_tick = litmus_dummy_scheduler_tick,
98 .prepare_task = litmus_dummy_prepare_task, 97 .prepare_task = litmus_dummy_prepare_task,
99 .tear_down = litmus_dummy_tear_down, 98 .tear_down = litmus_dummy_tear_down,
diff --git a/kernel/sched_psn_edf.c b/kernel/sched_psn_edf.c
index 174cfea02c..51acd55ff8 100644
--- a/kernel/sched_psn_edf.c
+++ b/kernel/sched_psn_edf.c
@@ -516,8 +516,7 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = {
516#define INIT_SCHED_PLUGIN (struct sched_plugin) {\ 516#define INIT_SCHED_PLUGIN (struct sched_plugin) {\
517 .plugin_name = "PSN-EDF",\ 517 .plugin_name = "PSN-EDF",\
518 .ready_to_use = 1,\ 518 .ready_to_use = 1,\
519 .algo_scheduler_tick = psnedf_scheduler_tick,\ 519 .scheduler_tick = psnedf_scheduler_tick,\
520 .scheduler_tick = rt_scheduler_tick,\
521 .prepare_task = psnedf_prepare_task,\ 520 .prepare_task = psnedf_prepare_task,\
522 .sleep_next_period = edf_sleep_next_period,\ 521 .sleep_next_period = edf_sleep_next_period,\
523 .tear_down = psnedf_tear_down,\ 522 .tear_down = psnedf_tear_down,\