Andrei Dorofeev wrote:

Hi Ethan,

I haven't reviewed everything yet, but I have these
comments/questions so far.

usr/src/uts/i86pc/os/intr.c
 intr_thread_prolog():294
 How come intrtime gets set to "t->t_intr_start - tsc_read()"
 and not "tsc_read() - t->t_intr_start" like everywhere else?
 Is it intentional?

Ick. That's the way the code has been. I touched it, but didn't notice that it was already backwards. That definitely needs to be reversed.

 cpu_intr_swtch_enter():717
Why are you using atomic_add_64() here? It seems that we're updating local CPU's counters everywhere else
 without using atomic ops.

This function isn't called with interrupts disabled, unlikely all the other instances in intr.c. atomic ops aren't needed to protect intrstat[pil] because no other interrupt can arrive at this pil level, but a higher level interrupt could arrive and update the same intracct[mstate].
   -- Ethan

_______________________________________________
perf-discuss mailing list
perf-discuss@opensolaris.org

Reply via email to