[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-kernel
Subject:    Re: 2.1.124-pre
From:       Adam Sulmicki <adam () cfar ! UMD ! EDU>
Date:       1998-09-30 21:40:11
[Download RAW message or body]


Hello,

->>         1) umdos is still broken and refuses to compile

->What problem are you having with umsdos? pre-124 doesn't change the umsdos
->code, and 123 compiled fine here with no additional changes.

Hmm, that's odd, but then again, the 124 does not boot for me 
due to the fpu trap problem, while it probaly does boots for many others.

The error message was at the final linking stage. It was as follows.
[fix follows below]

ld -m elf_i386 -T /usr/src/Linux/21/make-123/arch/i386/vmlinux.lds -e
stext arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o
init/version.o \
        arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o
mm/mm.o fs/fs.o ipc/ipc.o \
        fs/filesystems.a \
        net/network.a \
        drivers/block/block.a drivers/char/char.a drivers/misc/misc.a
drivers/net/net.a drivers/cdrom/cdrom.a drivers/pci/pci.a
drivers/pnp/pnp.a drivers/video/video.a \
        /usr/src/Linux/21/make-123/arch/i386/lib/lib.a
/usr/src/Linux/21/make-123/lib/lib.a
/usr/src/Linux/21/make-123/arch/i386/lib/lib.a \
        -o vmlinux
fs/filesystems.a(umsdos.o): In function `UMSDOS_read_super':
umsdos.o(.text+0x11c0): undefined reference to `umsdos_dentry_operations'
umsdos.o(.text+0x11e9): undefined reference to `umsdos_dentry_operations'
fs/filesystems.a(umsdos.o): In function `umsdos_rlookup_x':
umsdos.o(.text+0x3748): undefined reference to `umsdos_dentry_operations'
make: *** [vmlinux] Error 1
[root@bar make-123]#


It seems to b/c in the files which contain those two functions the
umsdos_dentry operations is defined as 

	extern foo umsdos_dentry_operations;

while the function itself is defined as 

	static struct foo umsdos_dentry_operations

Those two signatures does not match. I belive the fix is as 
follows (well it does compiles for me with it :)

------------------------------------------------------------------
[adam@bar make-123]$ diff -u fs/umsdos/dir.c{-ORIG,}
--- fs/umsdos/dir.c-ORIG        Wed Sep 30 17:26:28 1998
+++ fs/umsdos/dir.c     Wed Sep 30 17:32:03 1998
@@ -44,7 +44,7 @@
        }
 }
 
-static struct dentry_operations umsdos_dentry_operations =
+struct dentry_operations umsdos_dentry_operations =
 {
        umsdos_dentry_validate, /* d_validate(struct dentry *) */
        NULL,                   /* d_hash */
------------------------------------------------------------------

Is this cool?

Adam

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic