From 89f07556637c1a70f5a78ac6cee7deae165755e9 Mon Sep 17 00:00:00 2001
From: Tobias Bouschen <tobias.bouschen@googlemail.com>
Date: Mon, 25 Mar 2019 12:57:58 +0100
Subject: [PATCH] Fix some minor layout issues

---
 kernel/sched/fair.c      |  8 +++---
 kernel/sched/idle_task.c |  5 ++--
 kernel/sched/pb.c        | 53 +++++++++++++++++-----------------------
 3 files changed, 28 insertions(+), 38 deletions(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 68de29374ef9..66d0580d227f 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6191,8 +6191,7 @@ pick_next_task_fair(struct rq *rq, struct task_struct *prev, struct rq_flags *rf
 
 	next_mode = determine_next_mode_pb(rq);
 
-	if (next_mode == PB_EXEC_MODE)
-	{
+	if (next_mode == PB_EXEC_MODE) {
 		return RETRY_TASK;
 	}
 
@@ -8970,14 +8969,13 @@ static void task_tick_fair(struct rq *rq, struct task_struct *curr, int queued)
 	if (static_branch_unlikely(&sched_numa_balancing))
 		task_tick_numa(rq, curr);
 
-	if(pb->mode==PB_ADMIN_MODE){
+	if (pb->mode==PB_ADMIN_MODE) {
 		pb->count_admin_cycles++;
 	}
 
 	next_mode = determine_next_mode_pb(rq);
 
-	if (next_mode == PB_EXEC_MODE)
-	{
+	if (next_mode == PB_EXEC_MODE) {
 		resched_curr(rq);
 	}
 }
diff --git a/kernel/sched/idle_task.c b/kernel/sched/idle_task.c
index 50e127c0d6a3..f6183c875367 100644
--- a/kernel/sched/idle_task.c
+++ b/kernel/sched/idle_task.c
@@ -30,8 +30,7 @@ pick_next_task_idle(struct rq *rq, struct task_struct *prev, struct rq_flags *rf
 
 	next_mode = determine_next_mode_pb(rq);
 
-	if (next_mode == PB_EXEC_MODE)
-	{
+	if (next_mode == PB_EXEC_MODE) {
 		return RETRY_TASK;
 	}
 
@@ -64,7 +63,7 @@ static void task_tick_idle(struct rq *rq, struct task_struct *curr, int queued)
 	struct pb_rq *pb = &(rq->pb);
 	enum pb_mode next_mode;
 
-	if(pb->mode == PB_ADMIN_MODE){
+	if (pb->mode == PB_ADMIN_MODE) {
 		pb->count_admin_cycles++;
 	}
 
diff --git a/kernel/sched/pb.c b/kernel/sched/pb.c
index 2c06100fba6a..2af03985b818 100644
--- a/kernel/sched/pb.c
+++ b/kernel/sched/pb.c
@@ -1,5 +1,4 @@
 #include "perf_error_detection.h"
-//#include "sched.h"
 
 /*
  * It is possible submit a plan only if no plan is currently executed
@@ -11,8 +10,9 @@ int pb_submit_plan(struct pb_init_struct *initstr, struct rq *rq)
 	 */
 	volatile struct pb_rq * pb = (volatile struct pb_rq*)(&(rq->pb));
 
-	if (pb->mode != PB_DISABLED_MODE)
+	if (pb->mode != PB_DISABLED_MODE) {
 		return -1;
+	}
 
 	pb->plan = initstr->plan;
 	pb->size = initstr->size;
@@ -25,7 +25,7 @@ int pb_submit_plan(struct pb_init_struct *initstr, struct rq *rq)
 
 	pb->is_initialized = 1;	// must be initialized last
 
-	resched_curr(rq);	// reschedule asap
+	resched_curr(rq);	// reschedule ASAP
 
 	return 0;
 }
@@ -42,7 +42,7 @@ EXPORT_SYMBOL(set_pb_plan_size);
  * Kelvin's Testcode
  */
 //insert into pb queue (analog to enqueue)
-void set_pb_plan_entry(struct pb_rq *pb_rq, unsigned int i, u64 n_instr, u64 task_id, struct task_struct *task_struct )
+void set_pb_plan_entry(struct pb_rq *pb_rq, unsigned int i, u64 n_instr, u64 task_id, struct task_struct *task_struct)
 {
 	pb_rq->plan[i].n_instr = n_instr;
 	pb_rq->plan[i].task_id = task_id;
@@ -100,13 +100,12 @@ static struct task_struct * pick_next_task_pb(struct rq *rq,
 	pb->mode = next_mode;
 
 	// The mode does not change --> no behavior change is needed
-	if (next_mode == PB_EXEC_MODE)
-	{
-		if (current_mode == PB_EXEC_MODE){
+	if (next_mode == PB_EXEC_MODE) {
+		if (current_mode == PB_EXEC_MODE) {
 			u64 perf_counter;
 			u64 read_error = get_perf_counter(pb->pevent, &perf_counter);
 
-			if (read_error){
+			if (read_error) {
 				printk(KERN_WARNING "FETCHING PERFORMANCE COUNTER IN PB SCHEDULER FAILED WITH %llu\n", read_error);
 			}
 
@@ -115,55 +114,51 @@ static struct task_struct * pick_next_task_pb(struct rq *rq,
 			// see 'perf_event_release_kernel(struct perf_event *event)' in core.c
 			pb->pevent = NULL;
 
-			if (perf_counter < pb->plan[pb->c_entry].n_instr){
+			if (perf_counter < pb->plan[pb->c_entry].n_instr) {
 				u64 under_time = pb->plan[pb->c_entry].n_instr - perf_counter;
 
-				printk(KERN_WARNING "PB TASK %llu RAN  %llu INSTRUCTIONS TOO SHORT\n", pb->plan[pb->c_entry].task_id, under_time);
-
-			} else if (perf_counter > pb->plan[pb->c_entry].n_instr){
+				printk(KERN_WARNING "PB TASK %llu RAN %llu INSTRUCTIONS TOO SHORT\n", pb->plan[pb->c_entry].task_id, under_time);
+			} else if (perf_counter > pb->plan[pb->c_entry].n_instr) {
 				u64 under_time = perf_counter - pb->plan[pb->c_entry].n_instr;
 
-				printk(KERN_WARNING "PB TASK %llu  RAN %llu INSTRUCTIONS TOO LONG\n", pb->plan[pb->c_entry].task_id, under_time);
+				printk(KERN_WARNING "PB TASK %llu RAN %llu INSTRUCTIONS TOO LONG\n", pb->plan[pb->c_entry].task_id, under_time);
 			}
 
-
 			pb->c_entry++;
-			if (pb->c_entry >= pb->size){
+			if (pb->c_entry >= pb->size) {
 				printk(KERN_DEBUG "PLAN DONE\n");
 				pb->mode = PB_DISABLED_MODE;
 				pb->is_initialized = 0;
-			}else{
+			} else {
 				int perf_init_res = init_perf_event(&pb->plan[pb->c_entry], &pb->pevent);
-				if(perf_init_res < 0){
+				if(perf_init_res < 0) {
 					//initialization error detection/handling could happen here
 					printk(KERN_WARNING "PB EXEC,START,%u,%llu: FAILED OPEN PERF EVENT\n", pb->c_entry, sched_clock());
 				} else {
 					printk(KERN_DEBUG "PB EXEC,START,%u,%llu\n", pb->c_entry, sched_clock());
-
 				}
 			}
-		}else if(current_mode == PB_ADMIN_MODE){
+		} else if(current_mode == PB_ADMIN_MODE) {
 			printk(KERN_DEBUG "PB ADMIN,STOP,%u,%llu\n", pb->c_entry, sched_clock());
-		}else{
+		} else {
 			// PB_DISABLED_MODE
 			int perf_init_res = init_perf_event(&pb->plan[pb->c_entry], &pb->pevent);
 
-			if(perf_init_res < 0){
+			if(perf_init_res < 0) {
 				//initialization error detection/handling could happen here
 				printk(KERN_WARNING "PB INIT,%u,%llu: FAILED OPEN PERF EVENT\n", pb->c_entry, sched_clock());
 			} else {
 				printk(KERN_DEBUG "PB INIT,%u,%llu\n", pb->c_entry, sched_clock());
-
 			}
 		}
 
-		if (pb->mode != PB_DISABLED_MODE){
+		if (pb->mode != PB_DISABLED_MODE) {
 			// Return current task from plan if plan is enabled
 			picked = pb->plan[pb->c_entry].task_struct;
 		}
 	}
 
-	if (current_mode != next_mode){
+	if (current_mode != next_mode) {
 		// Necessary to manage the preempted task
 		put_prev_task(rq, prev);
 	}
@@ -192,8 +187,7 @@ static void task_tick_pb(struct rq *rq, struct task_struct *p, int queued)
 	pb->count_pb_cycles++;
 	next_mode = determine_next_mode_pb(rq);
 
-	if (next_mode != PB_EXEC_MODE)
-	{
+	if (next_mode != PB_EXEC_MODE) {
 		resched_curr(rq);
 	}
 }
@@ -203,8 +197,7 @@ static unsigned int get_rr_interval_pb(struct rq *rq, struct task_struct *task)
 	return 0;
 }
 
-static void
-prio_changed_pb(struct rq *rq, struct task_struct *p, int oldprio)
+static void prio_changed_pb(struct rq *rq, struct task_struct *p, int oldprio)
 {
 	// NOP
 }
@@ -233,9 +226,9 @@ const struct sched_class pb_sched_class = {
 	.set_curr_task          = set_curr_task_pb, // NOP
 	.task_tick		= task_tick_pb,
 
-	.get_rr_interval	= get_rr_interval_pb, // NOP
+	.get_rr_interval	= get_rr_interval_pb, // NOP (return 0)
 
-	.prio_changed		= prio_changed_pb, // NOP (return 0)
+	.prio_changed		= prio_changed_pb, // NOP
 	.switched_to		= switched_to_pb, // NOP
 
 	.update_curr		= update_curr_pb, // NOP
-- 
GitLab