|
Bug in IA64 runtime linker: msg#00006lib.glibc.bugs
I have a small test case that I believe illustrates a bug in the IA64 runtime linker. If my shared library is loaded with RTLD_LAZY, things don't resolve correctly. The following can be observed on RHEL 3 for Itanium. $ as my_lib.s -o my_lib.o $ ld my_lib.o -o my_lib.so -shared $ gcc -o driver.now driver.c -ldl -g $ gcc -o driver.lazy driver.c -ldl -g -DDO_RTLD_LAZY $ ./driver.now $ ./driver.lazy Segmentation fault $ my_lib.c, which produced my_lib.s (although not with gcc), looks like this. Making 'cp' one character shorter puts the string in a different data section and causes this example to work. *** void lib_fun() { char *cp; char c; cp = "12345678"; c=*cp; } *** driver.c *** #include <dlfcn.h> int main() { void *handle; void (*fun)(); #ifdef DO_RTLD_LAZY handle = dlopen("./my_lib.so", RTLD_LAZY); #else handle = dlopen("./my_lib.so", RTLD_NOW); #endif fun = dlsym(handle, "lib_fun"); (*fun)(); return 0; } *** Cheers Ed
Bug-glibc mailing list Bug-glibc@xxxxxxx http://mail.gnu.org/mailman/listinfo/bug-glibc |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Norton AntiVirus detected a virus in a message you sent. The inf ected attachment was deleted.: 00006, NAV for Microsoft Exchange-BRAIN |
|---|---|
| Next by Date: | Message status - undeliverable: 00006, Mailer-Daemon |
| Previous by Thread: | Norton AntiVirus detected a virus in a message you sent. The inf ected attachment was deleted.i: 00006, NAV for Microsoft Exchange-BRAIN |
| Next by Thread: | Message status - undeliverable: 00006, Mailer-Daemon |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |