diff --git a/kernel/sched/perf_error_detection.c b/kernel/sched/perf_error_detection.c index ca8021c81ed8cacda397b96623e8667765049ad2..cfea90319221d61f8656001442529e84b19af7af 100644 --- a/kernel/sched/perf_error_detection.c +++ b/kernel/sched/perf_error_detection.c @@ -29,7 +29,7 @@ int init_perf_event(struct plan_entry plan_entry){ return -1; } - return fd; + return 0; } //terminate perf event - return performance counter value @@ -47,17 +47,18 @@ long long terminate_perf_event(int fd, u64 task_id){ //handle the perf overflow event -> task needed more instructions than planed void overflow_handler( - struct perf_event *, - struct perf_sample_data *, + struct perf_event *event, + struct perf_sample_data *data, struct pt_regs *regs) { struct pb_rq *pb_rq; int cpu; - int fd; +// int fd; cpu = smp_processor_id(); - pb_rq = cpu_rq(cpu)->pb; - fd =pb_rq->fd; +// pb_rq = cpu_rq(cpu)->pb; + pb_rq = &cpu_rq(cpu)->pb; /* der compiler meckert: error: incompatible types when assigning to type ‘struct pb_rq *’ from type ‘struct pb_rq’ */ +// fd =pb_rq->fd; printk(KERN_WARNING "task %llu ran too long\n",pb_rq->plan[pb_rq->c_entry].task_id);