Re: Unresolved simbols error when trying to install BLCR modules

From: Paul H. Hargrove (PHHargrove_at_lbl_dot_gov)
Date: Fri Sep 02 2005 - 10:22:07 PDT

  • Next message: Paul H. Hargrove: "Re: thaw_threads returned error"
    Adolfo,
    
       From the errors you quote I can't determine what is going on.  When I 
    get a chance next week I'll download the sources (from the link you sent 
    in an earlier message) and see if I can figure out what is going on.
    
    -Paul
    
    Adolfo J. Banchio wrote:
    
    > Paul,
    > 
    > I unapcked the kernel-source to /export/tmp
    > 
    > then following som previous thread, I copied
    > /boot/config-2.4.21-20.EL to 
    > 
    > /export/tmp/linux-2.4.21-20.EL/.config
    > 
    > the I did "make oldconfig" followed by "make dep"
    > 
    > After this, in the blcr directory I did 
    > 
    >  ./configure --with-linux=/export/tmp/linux-2.4.21-20.EL
    > 
    > and finally, whe I did "make" I got "Error 2". The 
    > 'relevant' last part of the make output is copied below.
    > (with and without the work-around in file vmadump.c)
    > 
    > What do you think could be the reason, or best aproach
    > to follow?.
    > 
    > adolfo
    > 
    > 
    > 
    > 
    > [snip]
    > 
    > gmake[5]: Entering directory
    > `/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild'
    > gcc -D__KERNEL__ -I/export/tmp/linux-2.4.21-20.EL/include -Wall
    > -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common 
    > -Wno-unused -fomit-frame-pointer -pipe -freorder-blocks
    > -mpreferred-stack-boundary=2 -march=athlon -DMODULE -DMODVERSIONS
    > -include /export/tmp/linux-2.4.21-20.EL/include/linux/modversions.h
    > -Wall -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module
    > -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0
    > -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild/../../include -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild/../../include -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild/.././arch/i386 -I/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild/../../vmadump -nostdinc -iwithprefix include -DKBUILD_BASENAME=cr_async  -c -o cr_async.o cr_async.c
    > In file included from
    > /export/tmp/linux-2.4.21-20.EL/include/linux/prefetch.h:13,
    >                  from
    > /export/tmp/linux-2.4.21-20.EL/include/linux/list.h:6,
    >                  from
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:12,
    >                  from
    > /export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/cr_module.h:33,
    >                  from cr_async.c:32:
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:61: warning:
    > parameter names (without types) in function declaration
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:61: field
    > `loops_per_jiffy_R_ver_str' declared as a function
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:84: invalid
    > suffix on integer constant
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:84: syntax error
    > before numeric constant
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:84: warning:
    > function declaration isn't a prototype
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:269: invalid
    > suffix on integer constant
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:269: syntax error
    > before numeric constant
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:269: warning:
    > function declaration isn't a prototype
    > /export/tmp/linux-2.4.21-20.EL/include/asm/processor.h:273: warning:
    > parameter names (without types) in function declaration
    > In file included from
    > /export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/cr_module.h:33,
    >                  from cr_async.c:32:
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:190: invalid
    > suffix on integer constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:190: syntax error
    > before numeric constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:190:
    > `inter_module_register_R_ver_str' declared as function returning a
    > function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:190: warning:
    > function declaration isn't a prototype
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:191: invalid
    > suffix on integer constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:191: syntax error
    > before numeric constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:191:
    > `inter_module_unregister_R_ver_str' declared as function returning a
    > function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:191: warning:
    > function declaration isn't a prototype
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:192:
    > `inter_module_get_R_ver_str' declared as function returning a function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:192: warning:
    > parameter names (without types) in function declaration
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:193:
    > `inter_module_get_request_R_ver_str' declared as function returning a
    > function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:193: warning:
    > parameter names (without types) in function declaration
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:194: invalid
    > suffix on integer constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:194: syntax error
    > before numeric constant
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:194:
    > `inter_module_put_R_ver_str' declared as function returning a function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:194: warning:
    > function declaration isn't a prototype
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:203:
    > `try_inc_mod_count_R_ver_str' declared as function returning a function
    > /export/tmp/linux-2.4.21-20.EL/include/linux/module.h:203: warning:
    > parameter names (without types) in function declaration
    > gmake[5]: *** [cr_async.o] Error 1
    > gmake[5]: Leaving directory
    > `/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild'
    > gmake[4]: ***
    > [_mod_/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild] Error
    > 2
    > gmake[4]: Leaving directory `/export/tmp/linux-2.4.21-20.EL'
    > gmake[3]: *** [all] Error 2
    > gmake[3]: Leaving directory
    > `/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module/kbuild'
    > gmake[2]: *** [all-recursive] Error 1
    > gmake[2]: Leaving directory
    > `/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0/cr_module'
    > gmake[1]: *** [all-recursive] Error 1
    > gmake[1]: Leaving directory `/export/tmp/linux-2.4.21-20.EL/blcr-0.4.0'
    > make: *** [all] Error 2
    > 
    > 
    > 
    > 
    > 
    > On Thu, 2005-09-01 at 18:30, Paul H. Hargrove wrote:
    > 
    >>Ah, if you initially saw an error about modversions missing then you hit 
    >>the "original" bug 466.  I think that if you start from fresh kernel 
    >>sources, but apply my work around to blcr, then you should be OK.
    >>
    >>-Paul
    >>
    >>Adolfo J. Banchio wrote:
    >>
    >>>Paul,
    >>>
    >>>I tried the work around without success. 
    >>>I'm downloading the kernel-source to reinstall it, but
    >>>I do not know if this could solve the problem.
    >>>
    >>>I remember having copied some modversions.h to avoid
    >>>a compilation error (file not found) at the beginning.
    >>>But then I made many different things, so I'm not shure
    >>>what could be the problem now.
    >>>
    >>>I'll let you know if after reinstalling the source
    >>>is any change.
    >>>
    >>>thanks,
    >>>
    >>>adolfo
    >>>
    >>>
    >>>
    >>>On Thu, 2005-09-01 at 15:16, Paul H. Hargrove wrote:
    >>>
    >>>
    >>>>Adolfo,
    >>>>
    >>>>  It looks like this is a variant on bug 466.  The lines from 
    >>>>System.map show that the symbol irq_stat is exported, but not versioned. 
    >>>> Somehow, the headers used to build blcr are corresponding to a 
    >>>>versioned symbol.
    >>>>  I am not sure how this would happen, and am concerned that it may be 
    >>>>evidence that the kernel and headers might not match.  However, I'd like 
    >>>>to suggest a possible work-around.  Please try rebuilding blcr after 
    >>>>commenting out the following 6 lines near the top of vmadump/vmadump.c:
    >>>>
    >>>>#if defined(CONFIG_MODVERSIONS) && ! defined(MODVERSIONS)
    >>>>  #define MODVERSIONS
    >>>>#endif
    >>>>#if defined(MODVERSIONS)
    >>>>  #include <linux/modversions.h>
    >>>>#endif
    >>>>
    >>>>-Paul
    >>>>
    >>>>Adolfo J. Banchio wrote:
    >>>>
    >>>>
    >>>>>Paul,
    >>>>>
    >>>>>thanks for the prompt answer. 
    >>>>>
    >>>>>These are the outputs of the commands you asked:
    >>>>>
    >>>>>$ uname -r
    >>>>>2.4.21-20.EL
    >>>>>
    >>>>>$ grep irq_stat /boot/System.map
    >>>>>c029ef6a R __kstrtab_irq_stat
    >>>>>c02ab190 R __ksymtab_irq_stat
    >>>>>c03b7fc0 B irq_stat
    >>>>>
    >>>>>
    >>>>>I do not know if this proves the presence of the 466 bug,
    >>>>>but to complete the information the kernel is from
    >>>>>ROCKS (a cluster distribution) 3.3.0, based on RH EL.
    >>>>>
    >>>>>The installed kernel-source package is
    >>>>>
    >>>>>kernel-source-2.4.21-20.EL.i386.rpm
    >>>>>
    >>>>>and could be downloaded from:
    >>>>>http://www.rocksclusters.org/ftp-site/rocks-3.3.0/rocks-dist/enterprise/3/en/os/i386/RedHat/RPMS/
    >>>>>
    >>>>>
    >>>>>But I'm not whure if the running kernel is exactly this
    >>>>>(although the configure script doesn't claim is a different one).
    >>>>>When istalling the distribution it also install the following
    >>>>>packages
    >>>>>
    >>>>>  kernel-unsupported-2.4.21-20.EL.athlon.
    >>>>>  kernel-2.4.21-20.EL.athlon.
    >>>>>  kernel-pcmcia-cs-3.1.31-13.i386.
    >>>>>  kernel-source-2.4.21-20.EL.i386.
    >>>>>  kernel-utils-2.4-8.37.6.i386.
    >>>>>  rocks-kernel-3.3.0-13.i386.
    >>>>>
    >>>>>All these (and the problem) is on an Athlon machine (the frontend).
    >>>>>The nodes are Pentium 4 machines, and there the installation 
    >>>>>of BLCR and loading of modules happens without problems. On those
    >>>>>machines is the same kernel (but the smp version) running, and
    >>>>>the installed packages are:
    >>>>>
    >>>>>kernel-smp-unsupported-2.4.21-20.EL.i686.
    >>>>>kernel-unsupported-2.4.21-20.EL.i686.
    >>>>>kernel-2.4.21-20.EL.i686.
    >>>>>kernel-smp-2.4.21-20.EL.i686.
    >>>>>kernel-pcmcia-cs-3.1.31-13.i386.
    >>>>>kernel-source-2.4.21-20.EL.i386.
    >>>>>kernel-utils-2.4-8.37.6.i386.
    >>>>>rocks-kernel-3.3.0-13.i386.
    >>>>>
    >>>>>
    >>>>>I hope this helps to understand the problem. Since it work on the
    >>>>>nodes, it is not from high priority for me to solve the issue, but
    >>>>>it would be nice to, and specially if this could help to improve 
    >>>>>BLCR. Which, by the way, it's GREAT !!.  
    >>>>>
    >>>>>thanks in advance,
    >>>>>
    >>>>>adolfo
    >>>>>
    >>>>>
    >>>>>P.S.: separately I send another question from the working BLCR.
    >>>>>
    >>>>>
    >>>>>
    >>>>>
    >>>>>On Wed, 2005-08-31 at 19:46, Paul H. Hargrove wrote:
    >>>>>
    >>>>>
    >>>>>
    >>>>>>Adolfo,
    >>>>>>
    >>>>>>I am not certain about the cause of your problem.  The unresolved
    >>>>>>symbol is a versioned one (the _R94d0d943) and therefore must be
    >>>>>>exported by the kernel.  However, if the running kernel and the source
    >>>>>>(as configured) don't match this is just the kind of thing one could
    >>>>>>expect to happen.  Just for a sanity check, please ensure that "uname
    >>>>>>-r" says "2.4.21-20.EL", and tell me what "grep irq_stat
    >>>>>>/boot/System.map" yields.
    >>>>>>If I can get a hold of the sources for the kernel in question (please
    >>>>>>do *NOT* e-mail them to me), I should be able to see if there is
    >>>>>>something wierd in BLCR.  Could you point me an an ftp or http download
    >>>>>>site for the kernel source (I assume EL is RedHat Enterprise Linux, but
    >>>>>>I  don't know which release).
    >>>>>>It is also possible that this is a variation of bug 466 in which the
    >>>>>>kernel is not using versioned symbols but kernel modules are.  If so,
    >>>>>>the grep output requested above will prove it.
    >>>>>>
    >>>>>>-Paul
    >>>>>>
    >>>>>>Adolfo J. Banchio wrote:
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>>Hi,
    >>>>>>>
    >>>>>>>I'm trying to install the BLCR modules, but after
    >>>>>>>compiling the I get the following error when 
    >>>>>>>loading the first one:
    >>>>>>>
    >>>>>>>%/sbin/insmod /usr/local/lib/blcr/2.4.21-20.EL/vmadump_blcr.o
    >>>>>>>
    >>>>>>>/usr/local/lib/blcr/2.4.21-20.EL/vmadump_blcr.o: unresolved symbol
    >>>>>>>irq_stat_R94d0d943
    >>>>>>>
    >>>>>>>
    >>>>>>>I've checked te mailing list and find a similar thread, and
    >>>>>>>followed the suggestions there:
    >>>>>>>
    >>>>>>>- copy /boot/config file to /usr/src/linux/.config
    >>>>>>>- make oldconfig
    >>>>>>>-  make dep
    >>>>>>>
    >>>>>>>and the ./configure --with-system-map=/boot/System.map
    >>>>>>>etc
    >>>>>>>
    >>>>>>>But still get the mentioned error.
    >>>>>>>
    >>>>>>>Any help will be apreciated.
    >>>>>>>
    >>>>>>>thanks in advance
    >>>>>>>
    >>>>>>>
    >>>>>>>adolfo
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>
    > 
    
    
    -- 
    Paul H. Hargrove                          PHHargrove_at_lbl_dot_gov
    Future Technologies Group
    HPC Research Department                   Tel: +1-510-495-2352
    Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
    

  • Next message: Paul H. Hargrove: "Re: thaw_threads returned error"