Package: libmkl-rt Version: 2020.1.217-2 Severity: normal Dear Maintainer,
The library libmkl_rt.so seems to load libiomp5.so dynamically with a call to dlopen that probably looks more-or-less like this: dlopen("/usr/lib/x86_64-linux-gnu/libiomp5.so", RTLD_LAZY|RTLD_GLOBAL); The use of the flag RTLD_GLOBAL place this library in the global scope for the run-time symbol resolution. This libiomp5 is provided by llvm and appear to try to be ABI-compatible with the libgomp provided by gcc by defining the same symbols. This may cause an issue when another library was linked against a different version of libgomp. Some symbols might end up being dynamically linked to libiomp5 and others to libgomp. This happens in practice right now since for some OpenMP directives, gcc-9 now generate calls to GOMP_loop_nonmonotonic_dynamic_next that were calls to GOMP_loop_dynamic_next with gcc-8. Therefore, a library compiled with gcc-9 and linked against libgomp would, at run time, have its older symbols bound to libiomp5 while the newer would be bound to the newer version of libgomp. I guess the right thing to do fix this would be to not pollute the global scope and always load libiomp5.so without the flag RTLD_GLOBAL. Best regards, Celelibi -- System Information: Debian Release: bullseye/sid APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 5.6.0-1-amd64 (SMP w/8 CPU cores) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages libmkl-rt depends on: ii debconf [debconf-2.0] 1.5.74 ii libatlas3-base [liblapack.so.3] 3.10.3-9 ii libblas3 [libblas.so.3] 3.9.0-2 ii libc6 2.30-4 ii libgcc-5-dev 5.5.0-12 ii libgcc-6-dev 6.5.0-1 ii libgcc-7-dev 7.5.0-5 ii libgcc-8-dev 8.4.0-3 ii liblapack3 [liblapack.so.3] 3.9.0-2 ii libmkl-locale 2020.1.217-2 ii libmkl-meta-computational 2020.1.217-2 ii libmkl-meta-interface 2020.1.217-2 ii libmkl-meta-threading 2020.1.217-2 ii libomp-7-dev 1:7.0.1-12 ii libopenblas0-pthread [liblapack.so.3] 0.3.9+ds-1 libmkl-rt recommends no packages. libmkl-rt suggests no packages. -- debconf information: * libmkl-rt/use-as-default-blas-lapack: true * libmkl-rt/exact-so-3-selections: libblas.so.3, liblapack.so.3, libblas64.so.3, liblapack64.so.3, libmkl-rt/title: