lkml.org 
[lkml]   [2003]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: Build problem introduced in 2.4.22-pre3 -> 2.4.22-pre3-ac1 (+config+analysis)
From
Date
On Thu, 2003-07-10 at 00:36, Bas Mevissen wrote:
> Hi Alan, all,
>
> The attached .config fails to build on 2.4.22-pre3-ac1, but builds (and
> runs) fine on 2.4.22-pre3. The build error (during linkage) is:
>
> (make bzImage)
>
> ld -m elf_i386 -T /usr/src/linux-2.4.22-pre3-ac1/arch/i386/vmlinux.lds -e
> stext arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o
> init/version.o init/do_mounts.o \
> --start-group \
> arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o
> fs/fs.o ipc/ipc.o \
> drivers/acpi/acpi.o drivers/cpufreq/cpufreq.o drivers/char/char.o
> drivers/block/block.o drivers/misc/misc.o drivers/net/net.o
> drivers/char/drm/drm.o
> drivers/ide/idedriver.o drivers/cdrom/driver.o drivers/pci/driver.o
> drivers/net/pcmcia/pcmcia_net.o drivers/net/wireless/wireless_net.o
> drivers/pnp/pnp.o drivers/video/video.o drivers/media/media.o \
> net/network.o \
> /usr/src/linux-2.4.22-pre3-ac1/arch/i386/lib/lib.a
> /usr/src/linux-2.4.22-pre3-ac1/lib/lib.a
> /usr/src/linux-2.4.22-pre3-ac1/arch/i386/lib/lib.a \
> --end-group \
> -o vmlinux
> arch/i386/kernel/kernel.o(.text.init+0x7dae): In function
> `setup_ioapic_ids_from_mpc':
> : undefined reference to `xapic_support'
> arch/i386/kernel/kernel.o(.text.init+0x7fe5): In function
> `setup_ioapic_ids_from_mpc':
> : undefined reference to `xapic_support'
> make: *** [vmlinux] Error 1
>
> The symbol xapic_support is defined in arch/i386/kernel/io_apic.c as
> "extern unsigned int xapic_support;"
> But it is declared nowhere. Note that the symbol is new in -ac1.
>
> >From comparing the pre3 and pre3-ac1 versions of io_apic.c, I conclude that
> this is some unfinished work and not a typo. What probably is missing is some
> change to another file that should decare (and set) xapic_support.
>
> Sorry for not being able to submit a patch, but I hope my analyses helps.
>
> Regards,
>
> Bas.
> (Dell Inspiron 8500 with 2.4.22-pre3)
>
> (Note: I'm not on the list, so please always CC me)
>

Hello Bas,
there is two ways to fix this, you can use the the patch by Steven Cole
(I'll attach it).
Or then you untar the 2.4.21 to another dir and download 2.4.21-ac4
patch and patch the new kernel that you just untarred, and then you copy
$2.4.21-ac4kerneldir/arch/i386/kernel/mpparse.c to
$2.4.22-pre3-ac1kerneldir/arch/i386/kernel/mpparse.c, then it compiles
right. Good luck!

Regards
--
Markus Hästbacka <midian@ihme.org>

--- linux-2.4.22-pre3-ac1/arch/i386/kernel/io_apic.c.orig Mon Jul 7 11:06:36 2003
+++ linux-2.4.22-pre3-ac1/arch/i386/kernel/io_apic.c Mon Jul 7 11:25:07 2003
@@ -44,7 +44,6 @@

unsigned int int_dest_addr_mode = APIC_DEST_LOGICAL;
unsigned char int_delivery_mode = dest_LowestPrio;
-extern unsigned int xapic_support;

/*
* # of IRQ routing registers
@@ -1208,8 +1207,7 @@

old_id = mp_ioapics[apic].mpc_apicid;

- if (!xapic_support &&
- (mp_ioapics[apic].mpc_apicid >= apic_broadcast_id)) {
+ if ((mp_ioapics[apic].mpc_apicid >= apic_broadcast_id)) {
printk(KERN_ERR "BIOS bug, IO-APIC#%d ID is %d in the MPC
table!...\n",
apic, mp_ioapics[apic].mpc_apicid);
printk(KERN_ERR "... fixing up to %d. (tell your hw vendor)\n",
@@ -1223,8 +1221,7 @@
* 'stuck on smp_invalidate_needed IPI wait' messages.
* I/O APIC IDs no longer have any meaning for xAPICs and SAPICs.
*/
- if (!xapic_support &&
- (clustered_apic_mode != CLUSTERED_APIC_XAPIC) &&
+ if ((clustered_apic_mode != CLUSTERED_APIC_XAPIC) &&
(phys_id_present_map & (1 << mp_ioapics[apic].mpc_apicid))) {
printk(KERN_ERR "BIOS bug, IO-APIC#%d ID %d is already used!...\n",
apic, mp_ioapics[apic].mpc_apicid);
\
 
 \ /
  Last update: 2005-03-22 13:46    [W:0.044 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site