*/
unsigned long (*gettimeoffset)(void) = dummy_gettimeoffset;
-/*
- * Handle kernel profile stuff...
- */
-static inline void do_profile(struct pt_regs *regs)
-{
- if (!user_mode(regs) &&
- prof_buffer &&
- current->pid) {
- unsigned long pc = instruction_pointer(regs);
- extern int _stext;
-
- pc -= (unsigned long)&_stext;
-
- pc >>= prof_shift;
-
- if (pc >= prof_len)
- pc = prof_len - 1;
-
- prof_buffer[pc] += 1;
- }
-}
-
static unsigned long next_rtc_update;
/*
{
do_timer(regs);
do_set_rtc(); //FIME - EVERY timer IRQ?
- do_profile(regs);
+ profile_tick(CPU_PROFILING, regs);
return IRQ_HANDLED; //FIXME - is this right?
}