Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2007-02-22 at 13:36 +0100, Jan Engelhardt wrote:
> >
> >Yes, we switch away from PIT and use the local APIC timer. (LOC)
> 
> What's the benefit of doing so - and why has not it been done before?
> I mean, I run a regular 2.6.18.6,
> /sys/devices/system/clocksource/clocksource0/current_clocksource (is this
> related?) shows "acpi_pm", but the IRQ0 counter increases at HZ. Maybe I
> am confusing things, but why the need for PIT when clocksource is acpi_pm
> anyway?

acpi_pm is only a readout device to keep track of current time.

PIT and local APIC timer are used to provide either periodic or one shot
programmable timer events.

Up to now the kernel started PIT and local APIC timer in parallel with
the same period where PIT incremented jiffies and local APIC timer
called update_process_times() and profile_tick. We changed this to let
the boot cpu increment jiffies inside the local apic timer interrupt
after PIT has been stopped. A whole interrupt for jiffies64++ is waste.

Also when we switch to nohz / high resolution mode, we want to use the
local APIC, as it is much faster to access. The maximum delta to program
is 27ms for the pit and ~1sec for the local APIC. This is important for
dynticks, as we can achieve longer idle sleeps w/o reprogramming the
timer.

	tglx



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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux