Messages in this thread Patch in this message | | | Date | Sat, 24 Jan 1998 03:29:00 -0500 (EST) | From | Adam Heath <> | Subject | 2.1.81 compile problems patch |
| |
Here it is. Done correctly this time.
With this many non-SMP problems, I wonder if it was even test compiled with SMP disabled.
I think that having SMP as an option in config, etc would help this fact. diff -ruN 2.1.81-pure/arch/i386/kernel/i386_ksyms.c 2.1.81/arch/i386/kernel/i386_ksyms.c --- 2.1.81-pure/arch/i386/kernel/i386_ksyms.c Sat Jan 24 03:00:53 1998 +++ 2.1.81/arch/i386/kernel/i386_ksyms.c Fri Jan 23 23:50:45 1998 @@ -62,6 +62,7 @@ EXPORT_SYMBOL(strlen_user); #ifdef __SMP__ +EXPORT_SYMBOL(global_bh_lock); EXPORT_SYMBOL(apic_reg); /* Needed internally for the I386 inlines */ EXPORT_SYMBOL(cpu_data); EXPORT_SYMBOL_NOVERS(kernel_flag); diff -ruN 2.1.81-pure/arch/i386/kernel/irq.c 2.1.81/arch/i386/kernel/irq.c --- 2.1.81-pure/arch/i386/kernel/irq.c Sat Jan 24 03:00:53 1998 +++ 2.1.81/arch/i386/kernel/irq.c Sat Jan 24 00:18:40 1998 @@ -716,9 +716,10 @@ kstat.irqs[cpu][irq]++; do_lowlevel_IRQ = do_8259A_IRQ; +#ifdef __SMP__ if (IO_APIC_IRQ(irq)) do_lowlevel_IRQ = do_ioapic_IRQ; - +#endif do_lowlevel_IRQ(irq, cpu, ®s); /* diff -ruN 2.1.81-pure/include/asm-i386/softirq.h 2.1.81/include/asm-i386/softirq.h --- 2.1.81-pure/include/asm-i386/softirq.h Sat Jan 24 03:00:53 1998 +++ 2.1.81/include/asm-i386/softirq.h Fri Jan 23 23:44:13 1998 @@ -91,8 +91,8 @@ } /* These are for the irq's testing the lock */ -#define softirq_trylock() (in_bh ? 0 : (local_bh_count[smp_processor_id()]=1)) -#define softirq_endlock() (local_bh_count[smp_processor_id()] = 0) +#define softirq_trylock(cpu) (in_bh() ? 0 : (local_bh_count[smp_processor_id()]=1)) +#define softirq_endlock(cpu) (local_bh_count[smp_processor_id()] = 0) #define synchronize_bh() do { } while (0) #endif /* SMP */ | |