[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Unresolved symbol



Hi everybody,
 
I'm learning to make kernel modules and am currently working on a block device driver.
 
I had installed kernel version 2.2.16-22 (RH - 7.0) and then changed it to 2.2.16 (downloaded from
kernel.org).
 
PROBLEM : When I try to "insmod blkdev.o" it gives a message
 
        "unresolved symbol __constant_test_bit
         unresolved symbol __test_bit"
 
         and the module is not inserted . These two are being generated because I'm using
         INIT_REQUEST. If I put INIT_REQUEST in comments (/* */) the module gets inserted.
         But of course it doesn't work the way it should because of obvious reasons.
 
         Can anybody tell me where am I going wrong ?
 
NOTE : I've included <asm/bitops.h> which has these two functions.
 
HOW I INSTALLED MY NEW KERNEL (2.2.16): Probably I'm going wrong in my links. So here I
             reproduce the actual steps I took
    1. tar -xvf linux-2.2.16 in /usr/src
    2. The new source tree was installed in /usr/src/linux so,
        mv linux linux-new
        ln -s /usr/src/linux-new linux
    3. Then I got my links right i.e. in /usr/include I did
        ln -s /usr/src/linux/include/linux linux
        ln -s /usr/src/linux/include/asm asm
        ln -s /usr/src/linux/include/scsi scsi
    4. cd /usr/src/linux
        make mrproper
        make menuconfig
        make dep
        make clean
        make bzImage
        make modules
        make modules_install
    5. cp /usr/src/linux/arch/i-386/boot/bzImage /boot/new
    6. Updated /etc/lilo.conf  and ran lilo
    7. Rebooted from this new kernel
 
    8. Now I compiled my block device driver module and tried to insert it and it gave me the aforesaid
        error.
 
NOTE : 1. They say RH7.0 doesn't have a stable gcc so I had done
                cd /usr/bin
                rm -f gcc
                ln -s /usr/bin/kgcc gcc
                before recompiling the kernel.
            2. insmod blkdev.o -f doesn't work either
 
I'm not on any mailing list so please reply to me separately
 
Thanks for your time
I'd be glad if somebody can help me out
 
Regards
Sumit