[Lsb-infrastructure] [Bug 2732] should appchk know about STT_GNU_IFUNC

bugzilla-daemon at linux-foundation.org bugzilla-daemon at linux-foundation.org
Thu Jan 14 06:37:01 PST 2010


http://bugs.linuxbase.org/show_bug.cgi?id=2732

--- Comment #3 from Denis Silakov <silakov at ispras.ru> 2010-01-14 06:36:59 PST ---
It seems that at the moment IFUNC should not be allowed to be used in
applications, neither in binaries nor in shared libraries. Since, indeed, most
linkers fail to treat IFUNC symbols properly.

A good illustration of the problem is codelite IDE - its rpm built for Fedora
12 can be successfully installed in openSUSE 11.2, but the program fails to
launch due to symbol lookup error for _ZN9SingletonI8LanguageE11ms_instanceE in
libcodeliteu.so. However, readelf on libcodeliteu.so reports:

... OBJECT  <OS specific>: 10 DEFAULT 25 _ZN9SingletonI8LanguageE11ms_instanceE

That is, the symbol is located in libcodeliteu.so itself; however, loader
treats it as external and tries to resolve.

To be sure, codelite rpm for suse is free of this issue - WEAK binding is used
there for symbols in question.

So I think we should improve tha patches from this bug - appchk should
understand IFUNC, but should report failures if it is in use.

-- 
Configure bugmail: http://bugs.linuxbase.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the lsb-infrastructure mailing list