[PATCH] Timer interrupt cleanups [0/3]

From: Martin J. Bligh (mbligh@aracnet.com)
Date: Sun Jan 05 2003 - 21:32:09 EST


Well, I tested these on the NUMA-Q and they seem to work.
Basically (as discussed previously) they rename the stuff off
the global timer to global_timer_* and the stuff off the
local timer to local_timer_*. Then I tried to clean up the
cross-calling ifdef madness. There are various corner cases,
so it's possible I screwed something up, but I think it's OK.

Original calling graph looked like this, I'll update this for
each patch to show what happens. Feel free to flame me, everyone.

--------------------

Assuming we're SMP with a local apic timer all firing away:

timer_interrupt
        do_timer_interrupt
                {ack the interrupt}
                do_timer_interrupt_hook
                        do_timer
                                jiffies_64++;
                                update_times
                {update CMOS clock} (In the interrupt still ??!!)

apic_timer_interrupt
        smp_apic_timer_interrupt
                {ack the interrupt}
                smp_local_timer_interrupt
                        x86_do_profile
                        update_process_times

--------------------

On UP with local apic timer:

timer_interrupt
        do_timer_interrupt
                {ack the interrupt}
                do_timer_interrupt_hook
                        do_timer
                                jiffies_64++;
                                update_process_times
                                update_times
                {update CMOS clock} (In the interrupt still ??!!)

apic_timer_interrupt
        smp_apic_timer_interrupt
                {ack the interrupt}
                smp_local_timer_interrupt
                        x86_do_profile

--------------------

On a UP 386 with stale crusty breadcrumbs, and no local timer:
        
timer_interrupt
        do_timer_interrupt
                {ack the interrupt}
                do_timer_interrupt_hook
                        do_timer
                                jiffies_64++;
                                update_process_times
                                update_times
                        x86_do_profile()
                {update CMOS clock} (In the interrupt still ??!!)

--------------------

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Jan 07 2003 - 22:00:30 EST