Compilation problems with local APIC for uniprocessors in linux 2.4.20-ac2
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 6 lines · On Wed, 11 Dec 2002, [email protected] wrote:
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-ac2/include
(quoted diff) +0
-3-I/usr/lib/gcc-lib/i386-linux/3.2.2/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -nostdinc -iwithprefixinclude -DKBUILD_BASENAME=mpparse -c -o mpparse.o
mpparse.cmpparse.c:75: `dest_LowestPrio' undeclared here (not in a function)
Quoted 8 lines
mpparse.c: In function `smp_read_mpc':
mpparse.c:607:dest_Fixed' undeclared (first use in this function) mpparse.c:607: (Each undeclared identifier is reported only once mpparse.c:607: for each function it appears in.) mpparse.c:607:dest_LowestPrio' undeclared (first use in this function) make[1]: *** [mpparse.o] Error 1
make[1]: Leaving directory `/usr/src/linux-2.4.20-ac2/arch/i386/kernel'
make: *** [_dir_arch/i386/kernel] Error 2
I just bumped into the same error using 2.4.20-ac1 and came up with the appended short term fix.
HTH,
Steffen.
arch/i386/kernel/mpparse.c +1 -0
@@ -28,6 +28,7 @@#include <asm/mpspec.h> #include <asm/pgalloc.h> #include <asm/smpboot.h> +#include <asm/io_apic.h> /* Have we found an MP table */ int smp_found_config;
include/asm/io_apic.h +11 -11
@@ -47,17 +47,6 @@extern int nr_ioapics;extern int nr_ioapic_registers[MAX_IO_APICS ]; -enum ioapic_irq_destination_types { - dest_Fixed =0 , - dest_LowestPrio =1 , - dest_SMI =2 , - dest__reserved_1 =3 , - dest_NMI =4 , - dest_INIT =5 , - dest__reserved_2 =6 , - dest_ExtINT =7 -}; -struct IO_APIC_route_entry {__u32 vector :8 , delivery_mode : 3, /* 000: FIXED
@@ -147,4 +136,15 @@#define io_apic_assign_pci_irqs 0#endif +enum ioapic_irq_destination_types { + dest_Fixed =0 , + dest_LowestPrio =1 , + dest_SMI =2 , + dest__reserved_1 =3 , + dest_NMI =4 , + dest_INIT =5 , + dest__reserved_2 =6 , + dest_ExtINT =7 +}; +#endif