From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1767661AbXDFOeh (ORCPT ); Fri, 6 Apr 2007 10:34:37 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1767663AbXDFOeh (ORCPT ); Fri, 6 Apr 2007 10:34:37 -0400 Received: from ebiederm.dsl.xmission.com ([166.70.28.69]:35298 "EHLO ebiederm.dsl.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1767661AbXDFOeg (ORCPT ); Fri, 6 Apr 2007 10:34:36 -0400 From: ebiederm@xmission.com (Eric W. Biederman) To: Jiri Kosina Cc: Andrew Morton , linux-kernel@vger.kernel.org, e1000-devel@lists.sourceforge.net, Len Brown , Natalie Protasevich , Andi Kleen , Michal Piotrowski , auke-jan.h.kok@intel.com Subject: Re: 2.6.21-rc5-mm4 References: <20070402224745.71a25af7.akpm@linux-foundation.org> <46126EAA.3050000@intel.com> <46128C92.2020908@intel.com> Date: Fri, 06 Apr 2007 08:32:48 -0600 In-Reply-To: (Jiri Kosina's message of "Fri, 6 Apr 2007 15:23:05 +0200 (CEST)") Message-ID: User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Jiri Kosina writes: > Hi Eric, > > after struggling with this issue for some time, I think that it's just > some incosistent usage of NR_IRQS throughout the source probably due to > some include hell. I really don't understand the how the mach-*/ includes > are supposed to work. > > I found out (by disassembling resulting vmlinux binaries) that in > arch/i386/kernel/entry.S, the loop in irq_entries_start does too little > iterations compared to NR_IRQS value as seen in for example io_apic.c > > The super-stupid proof-patch below fixes the panic on my system. It's just > to demonstrate that the i386 includes really need fixing to be consistent > somehow. Thanks, and that would do it, it makes sense why it was the irq patch that caused problems. I had forgotten about the number of stubs issue. I had to clean that up on x86_64 as well and it probably makes most sense to put that cleanup as well, so we have a small fixed number of stubs which would make the includes not matter. Bleh. Hopefully soon. Eric > diff --git a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S > index 976438c..b20dc07 100644 > --- a/arch/i386/kernel/entry.S > +++ b/arch/i386/kernel/entry.S > @@ -53,6 +53,8 @@ > #include > #include "irq_vectors.h" > > +#define NR_IRQS 4096 > + > /* > * We use macros for low-level operations which need to be overridden > * for paravirtualization. The following will never clobber any registers: > > -- > Jiri Kosina