[PATCH] Timer interrupt cleanups [0/3]

Martin J. Bligh (mbligh@aracnet.com)
Sun, 05 Jan 2003 18:32:09 -0800


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/