Messages in this thread Patch in this message | | | Date | Wed, 16 May 2001 12:56:55 -0700 | From | Johannes Erdfelt <> | Subject | Re: 2.2.20pre1: Problems with SMP |
| |
On Mon, May 07, 2001, Shane Wegner <shane@cm.nu> wrote: > On Mon, May 07, 2001 at 11:02:50AM -0700, Johannes Erdfelt wrote: > > On Mon, May 07, 2001, Shane Wegner <shane@cm.nu> wrote: > > > > > > That does indeed correct the problem. 2.2.20pre1 now works > > > as expected. > > > > Hmm, that uses a VIA based chipset. I didn't know they did SMP yet. Does > > 2.4 work on this system? > > The last 2.4 kernel I tried was 2.4.3 I believe and it > worked fine more or less. I haven't tried any later 2.4 > kernels yet.
Could you try this patch? It applies on top of 2.2.20pre1
It also cleans up a couple of comments
JE
--- arch/i386/kernel/io_apic.c.old Wed May 16 12:48:03 2001 +++ arch/i386/kernel/io_apic.c Wed May 16 12:55:30 2001 @@ -204,6 +204,8 @@ /* * We disable IO-APIC IRQs by setting their 'destination CPU mask' to * zero. Trick by Ramesh Nalluri. + * Not anymore. This causes problems on some IO-APIC's, notably AMD 760MP's + * So we do it a more 2.4 kind of way now which should be safer -jerdfelt */ DO_ACTION( mask, 0, |= 0x00010000, io_apic_sync(entry->apic))/* mask = 1 */ DO_ACTION( unmask, 0, &= 0xfffeffff, ) /* mask = 0 */ @@ -646,8 +648,8 @@ entry.delivery_mode = dest_LowestPrio; entry.dest_mode = 1; /* logical delivery */ - entry.mask = 0; /* enable IRQ */ - entry.dest.logical.logical_dest = 0xff; /* but no route */ + entry.mask = 1; /* disable IRQ */ + entry.dest.logical.logical_dest = 0xff; idx = find_irq_entry(apic,pin,mp_INT); if (idx == -1) { - 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/
| |