diff --git a/kernel/sched/pb.c b/kernel/sched/pb.c index 61b37c17ff5c9b2f2fdf2da1bf6bf77f63cdd178..761266d3e11ba8388e32c97384e1ff7ea2503aae 100644 --- a/kernel/sched/pb.c +++ b/kernel/sched/pb.c @@ -1,4 +1,5 @@ #include "perf_error_detection.h" +//#include "sched.h" /* * It is possible to initialize a runqueue only if no plan is currently executed @@ -136,7 +137,7 @@ static struct task_struct * pick_next_task_pb(struct rq *rq, pb->mode = PB_DISABLED_MODE; pb->is_initialized = 0; }else{ - int perf_init_res = init_perf_event(pb->plan[pb->c_entry], &pb->pevent); + int perf_init_res = init_perf_event(&pb->plan[pb->c_entry], &pb->pevent); 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()); @@ -149,7 +150,7 @@ static struct task_struct * pick_next_task_pb(struct rq *rq, printk(KERN_DEBUG "PB ADMIN,STOP,%u,%llu\n", pb->c_entry, sched_clock()); }else{ // PB_DISABLED_MODE - int perf_init_res = init_perf_event(pb->plan[pb->c_entry], &pb->pevent); + int perf_init_res = init_perf_event(&pb->plan[pb->c_entry], &pb->pevent); if(perf_init_res < 0){ //initialization error detection/handling could happen here diff --git a/kernel/sched/perf_error_detection.c b/kernel/sched/perf_error_detection.c index 62cdfcbc8378f24fe7a062e8542ab25d53051594..2d149a6cabf6e298639ba4ece02877365bdd87d1 100644 --- a/kernel/sched/perf_error_detection.c +++ b/kernel/sched/perf_error_detection.c @@ -1,5 +1,5 @@ #include "perf_error_detection.h" -#include "sched.h" +//#include "sched.h" /* * Our understanding of perf so far. Please correct as needed. @@ -14,7 +14,7 @@ /* * initialize perf event for new task */ -int init_perf_event(struct plan_entry plan_entry, struct perf_event **pevent){ +int init_perf_event(struct plan_entry *plan_entry, struct perf_event **pevent){ struct perf_event_attr pe; memset(&pe, 0, sizeof(struct perf_event_attr)); diff --git a/kernel/sched/perf_error_detection.h b/kernel/sched/perf_error_detection.h index dbe9f18ff45478a074dc460bf7397c9cab68adf5..d911d26a475c45dccdd4c74d46f9cee1b398ecb6 100644 --- a/kernel/sched/perf_error_detection.h +++ b/kernel/sched/perf_error_detection.h @@ -2,8 +2,9 @@ #define __PERF_ERROR_DETECTION_H #include <linux/perf_event.h> +#include "sched.h" -int init_perf_event(struct plan_entry, struct perf_event **pevent); +int init_perf_event(struct plan_entry*, struct perf_event**); u64 get_perf_counter(struct perf_event *pevent, u64 *perf_counter); diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 134c29ea35e96bb67d6f260d5f7477925af6ac02..16eeea7788f9dc93255037ddac974e0c981905ba 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -551,7 +551,7 @@ struct pb_rq { }; int pb_init_rq(struct pb_init_struct *initstr, struct rq *rq); -static inline int determine_next_mode_pb(struct rq *rq); +inline int determine_next_mode_pb(struct rq *rq); static inline int rt_bandwidth_enabled(void) {