From 43c9e2b296f2c3e10f16475aa989aeaa8d922ddf Mon Sep 17 00:00:00 2001 From: meto <meto@zedat.fu-berlin.de> Date: Fri, 22 Mar 2019 14:37:31 +0100 Subject: [PATCH] fix no work --- kernel/sched/pb.c | 5 +++-- kernel/sched/perf_error_detection.c | 4 ++-- kernel/sched/perf_error_detection.h | 3 ++- kernel/sched/sched.h | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/kernel/sched/pb.c b/kernel/sched/pb.c index 61b37c17ff5c..761266d3e11b 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 62cdfcbc8378..2d149a6cabf6 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 dbe9f18ff454..d911d26a475c 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 134c29ea35e9..16eeea7788f9 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) { -- GitLab