Messages in this thread | | | Date | Tue, 19 Aug 2003 16:51:26 -0700 | From | William Lee Irwin III <> | Subject | Re: [BUG][2.6.0-test3-bk7] x86-64 UP_IOAPIC panic caused by cpumask_t conversion |
| |
Mikael Pettersson <mikpe@csd.uu.se> writes: > Nasty. > But why does i386/UP work?
On Wed, Aug 20, 2003 at 01:39:10AM +0200, Andi Kleen wrote: > > (I believe this is the correct thing to do, except having > > CONFIG_X86_IO_APIC in generic code isn't quite right.) > Better would be to undo the cpumask_t changes in io_apic.c > and go back to unsigned long masks there again. > Obviously a cpu mask is not the right data structure to manage APICs > Another way would be to do whatever i386 does to avoid the problem. > The IO-APIC code is unfortunately quite out of date/unsynced compared to i386, > maybe it just needs some bug fix ported over. I will check that later.
Odd; I have a UP IO-APIC ia32 box here and it appears to do okay; there is a question of sparse APIC ID's and APIC ID space needing to be independent of NR_CPUS handled in the ia32 code that isn't handled in the x86_64 code. It was handled for ia32 by using a bitmap of size MAX_APICS (physid_mask_t) instead of cpumask_t for the things, which appears to eliminate various special cases for xAPIC's too.
-- wli - 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/
| |