// ISR monitor void mt_trace_ISR_start(int irq) { struct sched_block_event *b; b = & __raw_get_cpu_var(ISR_mon); b->cur_ts = sched_clock(); b->cur_event = (unsigned long)irq; aee_rr_rec_last_irq_enter(smp_processor_id(), irq, b->cur_ts); }
// ISR monitor void mt_trace_ISR_start(int irq) { struct sched_block_event *b; #ifdef CONFIG_MTK_SCHED_TRACERS struct task_struct *tsk= __raw_get_cpu_var(mtk_next_task); if (unlikely(!sched_stopped)) trace_int_switch(tsk, irq, 1); __mt_irq_enter(irq); #endif b = & __raw_get_cpu_var(ISR_mon); b->cur_ts = sched_clock(); b->cur_event = (unsigned long)irq; aee_rr_rec_last_irq_enter(smp_processor_id(), irq, b->cur_ts); }