// 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);
 
}
Exemple #2
0
// 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);
 
}