RE: [Redhat-s390-list] RE: RedHat Beta - netiucv.o unresolved symbol

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

 



That didn't help.  I get the same error messages as before.  Here's the gcc
command that was generated to compile the module:
gcc -D__KERNEL__ -I/usr/src/redhat/BUILD/kernel-2.4.9/linux/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
-fno-strict-aliasing -fno-common -Wno-unused -pipe -fno-strength-reduce
-DMODULE -DMODVERSIONS -include
/usr/src/redhat/BUILD/kernel-2.4.9/linux/include/linux/modversions.h   -c -o
netiucv.o netiucv.c

This is really looking like something the Red Hat folks need to fix.

Mark Post

-----Original Message-----
From: Post, Mark K [mailto:mark.post@eds.com]
Sent: Friday, October 19, 2001 5:27 PM
To: 'Ulrich Weigand'; 'redhat390'
Cc: LINUX-390@VM.MARIST.EDU
Subject: [Redhat-s390-list] RE: RedHat Beta - netiucv.o unresolved
symbol


Ulrich,

Ok, I did my make mrproper, and the make dep is running now.  I'll post my
results after the make modules is done.  Go eat dinner or something, you're
working too late again from home.  :)

Mark Post

-----Original Message-----
From: Ulrich Weigand [mailto:weigand@immd1.informatik.uni-erlangen.de]
Sent: Friday, October 19, 2001 5:01 PM
To: mark.post@eds.com
Cc: LINUX-390@VM.MARIST.EDU
Subject: Re: RedHat Beta - netiucv.o unresolved symbol


Mark Post wrote:

>From what I can tell, they have on the ac14 patch.  There is a comment in
>the header of iucv.c:
> *    2Gb awareness and general cleanup:
> *      Fritz Elfert (elfert@de.ibm.com, felfert@millenux.com)

Yes, silly me, if the driver needs fsm, it's obviously 
Fritz's version :-/
 
>It looks like the symbols are in the kernel:
>cat /proc/ksyms | grep fsm
>001092dc init_fsm_R__ver_init_fsm
>00109468 kfree_fsm_R__ver_kfree_fsm
>00109588 fsm_settimer_R__ver_fsm_settimer
>001095c4 fsm_deltimer_R__ver_fsm_deltimer
>001095f0 fsm_addtimer_R__ver_fsm_addtimer
>001096a4 fsm_modtimer_R__ver_fsm_modtimer
>001094cc fsm_getstate_str_R__ver_fsm_getstate_str

Aha, the kernel was compiled with symbol versioning on ...
 
>But, they're not being picked up by the netiucv module:
>insmod ./netiucv.o
>./netiucv.o: unresolved symbol fsm_settimer
>./netiucv.o: unresolved symbol init_fsm
>./netiucv.o: unresolved symbol fsm_deltimer
>./netiucv.o: unresolved symbol fsm_getstate_str
>./netiucv.o: unresolved symbol fsm_addtimer
>./netiucv.o: unresolved symbol kfree_fsm

... but the module with symbol versioning off.  Therefore
the symbol names don't match (they are supposed to match
*exactly*, including the argument type mangling stuff 
appended by symbol versioning).

Now I have no idea why this would be the case; the build
process should build everything correctly (unless you've done
things like changing configure options between 'make image'
and 'make modules'?) ...

Sometimes the 2.4 build process gets confused; in that case
a complete rebuild starting with a 'make mrproper' will get
things in order again.

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  weigand@informatik.uni-erlangen.de

_______________________________________________
Redhat-s390-list mailing list
Redhat-s390-list@redhat.com
https://listman.redhat.com/mailman/listinfo/redhat-s390-list



[Index of Archives]     [Fedora General Discussion]     [LKML]     [Red Hat Install]     [Red Hat Watch]     [Red Hat Development]     [Linux s390]     [Gimp]     [Yosemite News]

  Powered by Linux