Hey,I'm encountering this when I'm using some tensorflow functions:/lib/python3.6/tensorflow/python/_pywrap_tensorflow_internal.so: failed looking up symbol
[backtrace]
0x00000000403442a7 <elf::object::symbol(unsigned int, bool)+391>
0x0000000040397dce <elf::object::arch_relocate_rela(unsigned int, unsigned int, void*, long)+574>
0x000000004033eed4 <elf::object::relocate_rela()+196>
0x0000000040341d27 <elf::object::relocate()+199>
0x0000000040345623 <elf::program::load_object(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::shared_ptr<elf::object>, std::allocator<std::shared_ptr<elf::object> > >&)+1459>
0x0000000040345e70 <elf::program::get_library(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, bool)+336>
0x0000000040465fd8 <dlopen+136>
0x0000100000937228 <_PyImport_FindSharedFuncptr+376>
0x745f70617277796f <???+1920432495>It seems the name is not print out.If I'm using the check-libcfunc-avail.sh to check the _pywrap_tensorflow_internal.so, I get the following output:pthread_mutex_consistent not found
pthread_mutexattr_setrobust not found
fmaf not found
fma not found
mallinfo not found
0000000000000000 not found
DF not found
*UND* not found
0000000000000000 not found
(GLIBC_2.2.5) not found
mremap not found
Originally, it also contains some output of missing complex number related functions. I include those from musl. The list reduces to the above.It would be great to know which symbol it's missing. I'm not sure whether it's looking for a symbol from libc or from other library.Best,Zhiting
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/d84f4991-69d5-45d8-98a2-403257c9e4b2%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/4a72dd0b-b20a-4877-94da-aa9313add35e%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/4a72dd0b-b20a-4877-94da-aa9313add35e%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/a83feefd-2c93-48d0-bb9b-674ad0870853%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/a83feefd-2c93-48d0-bb9b-674ad0870853%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/42454aa1-51b9-4638-bcd0-337002364524%40googlegroups.com.
pip3 install ./tensorflow-1.14.1-cp36-cp36m-linux_x86_64.whl tensorflow-1.14.1-cp36-cp36m-linux_x86_64.whl is not a supported wheel on this platform.To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/42454aa1-51b9-4638-bcd0-337002364524%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/648f49e7-6f5a-4340-87ba-c923092c5af6%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/CAL9cFfOGj_Jy1VagTiwNXew%3Dd7pyFdbDs7JbvpW88-hqKs27tw%40mail.gmail.com.
ELF [tid:253, /lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so]: setprivate set to: 1ELF [tid:253, /lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so]: Executing DT_INIT functionELF [tid:253, /lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so]: Finished executing DT_INIT functionELF [tid:253, /lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so]: Executing 2 DT_INIT_ARRAYSZ functionsELF [tid:254, /libvdso.so]: Not found in /libvdso.so!ELF [tid:254, /usr/lib/libexpat.so.1]: Not found in /usr/lib/libexpat.so.1!ELF [tid:254, /usr/lib/libz.so.1]: Not found in /usr/lib/libz.so.1!ELF [tid:254, /lib/python3.7/lib-dynload/readline.cpython-37m-x86_64-linux-gnu.so]: Not found in /lib/python3.7/lib-dynload/readline.cpython-37m-x86_64-linux-gnu.so!ELF [tid:254, /usr/lib/libtinfo.so.6]: Not found in /usr/lib/libtinfo.so.6!ELF [tid:254, /lib/python3.7/site-packages/numpy/core/_multiarray_umath.cpython-37m-x86_64-linux-gnu.so]: blas_memory_alloc _visibility: 253, visible: 0!ELF [tid:254, /lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so]: blas_memory_alloc _visibility: 253, visible: 0!ELF [tid:254, ]: Not found in !/lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so: failed looking up symbol blas_memory_alloc
[backtrace]0x0000000040364205 <elf::object::symbol(unsigned int, bool)+1637>0x0000000040364306 <elf::object::resolve_pltgot(unsigned int)+134>0x000000004036462c <elf_resolve_pltgot+60>0x00000000403ad61f <???+1077597727>0x0000200000780f6f <???+7868271>0x0000000000000003 <???+3>To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/648f49e7-6f5a-4340-87ba-c923092c5af6%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/CAL9cFfOGj_Jy1VagTiwNXew%3Dd7pyFdbDs7JbvpW88-hqKs27tw%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/e82eb5f7-b3ee-4190-9ee6-7b85df302204%40googlegroups.com.
On Dec 15, 2019, at 19:09, zhiting zhu <zhit...@cs.utexas.edu> wrote:
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/F057D3F1-4156-49DE-935E-ECC0218FF401%40gmail.com.
It might be similar (or have same root cause) as the issue with gCurrentThreadInfo reported here -https://groups.google.com/forum/m/#!topic/osv-dev/k69cHw7qvTg. In both cases the symbols are TLS but in other case it was a HIDDEN symbol in this one it is DEFAULT. There maybe be some sort of bug in looking up TLS symbols. This one is also LOCAL (I do not remember the other case). I wonder if there is similar rule like with STT_SECTION - if TLS and LOCAL the symbol_module(sym, this). I wonder what musl is doing in this case.
diff --git a/core/elf.cc b/core/elf.ccindex 13f0c87a..de262e35 100644--- a/core/elf.cc+++ b/core/elf.cc@@ -642,10 +642,17 @@ symbol_module object::symbol(unsigned idx, bool ignore_missing) auto symtab = dynamic_ptr<Elf64_Sym>(DT_SYMTAB); assert(dynamic_val(DT_SYMENT) == sizeof(Elf64_Sym)); auto sym = &symtab[idx];+ auto type = sym->st_info & 15;+ if (type == STT_SECTION) {+ return symbol_module(sym, this);+ }+ auto binding = symbol_binding(*sym);+ if (type == STT_TLS && binding == STB_LOCAL) {+ return symbol_module(sym, this);+ } auto nameidx = sym->st_name; auto name = dynamic_ptr<const char>(DT_STRTAB) + nameidx; auto ret = _prog.lookup(name);- auto binding = symbol_binding(*sym); if (!ret.symbol && binding == STB_WEAK) { return symbol_module(sym, this); }diff --git a/libc/time.cc b/libc/time.ccindex 8aa11580..9b23a18f 100644--- a/libc/time.cc+++ b/libc/time.cc@@ -60,6 +60,8 @@ int clock_gettime(clockid_t clk_id, struct timespec* ts) switch (clk_id) { case CLOCK_BOOTTIME: case CLOCK_MONOTONIC:+ case CLOCK_MONOTONIC_COARSE:+ case CLOCK_MONOTONIC_RAW: fill_ts(osv::clock::uptime::now().time_since_epoch(), ts); break; case CLOCK_REALTIME:Copying to the list.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/e82eb5f7-b3ee-4190-9ee6-7b85df302204%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscribe@googlegroups.com.
cat vers
{global: get_tls_var;local: *;};
cat dso.c __thread int tlsvar = 11;int get_tls_var(void) { return tlsvar;}
cat main.c #include <stdio.h>int get_tls_var(void);int main() { printf("get_tls_var(): %d\n", get_tls_var()); return 0;}
gcc dso.c -fpic -shared -Wl,-version-script=vers -o libdso.so
gcc main.c libdso.so -Wl,-rpath,'$ORIGIN' -o main
gcc dso.c -fpic -shared -fuse-ld=gold -Wl,-version-script=vers -o libdso.so
gcc main.c libdso.so -Wl,-rpath,'$ORIGIN' -o main
/usr/lib/libdso.so: failed looking up symbol tlsvar
[backtrace]0x0000000040364155 <elf::object::symbol(unsigned int, bool)+1637>0x00000000403b28b9 <elf::object::arch_relocate_rela(unsigned int, unsigned int, void*, long)+649>0x000000004035fcb3 <elf::object::relocate_rela()+211>0x000000004036129a <elf::object::relocate()+250>0x0000000040365a20 <elf::program::load_object(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::shared_ptr<elf::object>, std::allocator<std::shared_ptr<elf::object> > >&)+2416>0x0000000040364a69 <elf::object::load_needed(std::vector<std::shared_ptr<elf::object>, std::allocator<std::shared_ptr<elf::object> > >&)+1209>0x0000000040365a18 <elf::program::load_object(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::shared_ptr<elf::object>, std::allocator<std::shared_ptr<elf::object> > >&)+2408>0x0000000040366a79 <elf::program::get_library(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, bool)+345>0x0000000040443882 <osv::application::application(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<0x0000000040443bd2 <osv::application::run(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()>0x0000000040443e20 <osv::application::run(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)+80>0x000000004022d6ee <do_main_thread(void*)+3230>0x00000000404782b9 <???+1078428345>0x000000004040f29b <thread_main_c+43>0x00000000403ae8b2 <???+1077602482>Copying to the list.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/e82eb5f7-b3ee-4190-9ee6-7b85df302204%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/F057D3F1-4156-49DE-935E-ECC0218FF401%40gmail.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/cc4d7b2b-6cbd-4082-a8cf-22ec7404d38a%40googlegroups.com.
Copying to the list.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/e82eb5f7-b3ee-4190-9ee6-7b85df302204%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/F057D3F1-4156-49DE-935E-ECC0218FF401%40gmail.com.
--
You received this message because you are subscribed to the Google Groups "OSv Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osv...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/cc4d7b2b-6cbd-4082-a8cf-22ec7404d38a%40googlegroups.com.