Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965388AbZLHCE6 (ORCPT ); Mon, 7 Dec 2009 21:04:58 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S935172AbZLHCE5 (ORCPT ); Mon, 7 Dec 2009 21:04:57 -0500 Received: from mail-pw0-f42.google.com ([209.85.160.42]:43237 "EHLO mail-pw0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934933AbZLHCE4 convert rfc822-to-8bit (ORCPT ); Mon, 7 Dec 2009 21:04:56 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=L5ZnLpneZO4VjHwP+0uUwPpICgBhfJ1rrCrRtRYJ7eAD0zEgnB0yQcpA3Xhpn+ShPd PIG1jcdPL28dviHXObJ5MjXHd+WYwb3mQKpRZzil6jQkO3LtFfMHjdk0PmjZivKcXFpb wh9hkbl6XKE/EIqRENFBv0PV44EbZWjLR6qTk= MIME-Version: 1.0 In-Reply-To: References: <1f1b08da0912071330i35808790r554f7a3a8d712ca7@mail.gmail.com> <1260232212.6255.33.camel@localhost.localdomain> Date: Mon, 7 Dec 2009 18:05:02 -0800 X-Google-Sender-Auth: d1507e8fd5394cd0 Message-ID: <1f1b08da0912071805m7bbd65cdhfcf9284379bbe23c@mail.gmail.com> Subject: Re: timer interrupt stucks using tickless kernel From: john stultz To: Ioannis Kyriakopoulos Cc: linux-kernel@vger.kernel.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3244 Lines: 81 On Mon, Dec 7, 2009 at 5:33 PM, Ioannis Kyriakopoulos wrote: > Thanks for the valuable help so far. > >>> 2. ? When performing cat proc/interrupts, I see that: >>> ? ? ? ? ? 0: ? ? ? ?157 ? IO-APIC-edge ? ? ?timer >>> ? ? ?How the system timer is attached on IO-APIC at the time that the >>> IO-APIC >>> ? ? ? is disabled on kernel configurations? Basically, the timer is not the >>> only >>> ? ? ? peripheral attached to IO-APIC as can be seen by /proc/interrupts. >>> >>> Here is the output of /proc/interrupts : >>> >>> ? ? ? ? ? ?CPU0 >>> ? 0: ? ? ? ?157 ? IO-APIC-edge ? ? ?timer >>> ? 1: ? ? ? ? ?2 ? IO-APIC-edge ? ? ?i8042 >>> ? 4: ? ? ? ?544 ? IO-APIC-edge ? ? ?serial >>> ? 8: ? ? ? ? ?1 ? IO-APIC-edge ? ? ?rtc0 >>> ? 9: ? ? ? ? ?0 ? IO-APIC-fasteoi ? acpi >>> ?12: ? ? ? ? ?4 ? IO-APIC-edge ? ? ?i8042 >>> ?14: ? ? ? ? ?4 ? IO-APIC-edge ? ? ?ata_piix >>> ?15: ? ? ? ? ?0 ? IO-APIC-edge ? ? ?ata_piix >>> ?16: ? ? ? ? ?0 ? IO-APIC-fasteoi ? uhci_hcd:usb5 >>> ?18: ? ? ? ? ?0 ? IO-APIC-fasteoi ? uhci_hcd:usb4 >>> ?19: ? ? ? ? 45 ? IO-APIC-fasteoi ? ata_piix, uhci_hcd:usb3 >>> ?22: ? ? ? ?149 ? IO-APIC-fasteoi ? HDA Intel >>> ?23: ? ? ? ? 72 ? IO-APIC-fasteoi ? ehci_hcd:usb1, uhci_hcd:usb2 >>> ?27: ? ? ? ? ?0 ? PCI-MSI-edge ? ? ?eth0 >>> NMI: ? ? ? ? ?0 ? Non-maskable interrupts >>> LOC: ? ?1865130 ? Local timer interrupts >> ? ? ? ? ? ?^^^ >>This value should be incrementing at HZ freq. > > Are you sure about that? ASAIK the Local timer interrupts (generated > by the LAPIC timer) are only used for timekeeping. Actually local timer interrupts are more often used for per-cpu scheduler ticks (as well as running per-cpu timers). Timekeeping is done from only one cpu (usually 0, but that varies depending on hotplug, etc). > The system tick is > generated by IRQ0 which in my second configuration should be triggered > by HPET (because I have enabled the HPET timer support). System tick? > Also, if the > interrupts generated by LAPIC are incremented at HZ freq, why the > interrupts generated by the timer (IRQ0) not happen at the same frequency > ?as well? Why take two interrupts when you could only take one? > Furthermore, we don't have an answer on why IO-APIC is used at the time > that it is disabled on kernel configurations. The fact that I have enabled > LAPIC timer support doesn't justify the use of the IO-APIC controller > by each own. Honestly, I dunno on the details there. If CONFIG_X86_IO_APIC=n, it looks like you should not be seeing the IO-APIC-* names in /proc/interrupts. Are you sure your booting the right kernel, or CONFIG_X86_IO_APIC is actally on in your .config? >>Is there something your actually having problems with here? Ignoring >>which interrupt line is used for the timer event, the system is >>functioning properly, right? > > Yes, apart from that, everything is working OK but it's really important > for me to get an answer on these issues. Ok. I hope these aren't homework questions :) thanks -john -- 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/