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

Bug#1021168: libgbm1: Extra \$ in libgbm.so.1.0.0



Package: libgbm1
Version: 20.3.5-1
Severity: important
File: /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0

Dear Maintainer,

When testing version 2019.1 of the Schrödinger suite we found a bug in 3 of the packages belonging to Mesa; libgbm1, libglx-mesa0 and libegl-mesa0 (reported as separat bugs)

We got the following error message

    libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast

The '\$' preceding '${ORIGIN}' does not seem right.

After running a script that checked all files in /lib, /lib64, /usr/lib and /usr/libexec
we found 3 files containing the string '\$${ORIGIN}/dri'.

    /usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0 (from libgbm1/now 20.3.5-1 amd64)
    /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0 (from libglx-mesa0/now 20.3.5-1 amd64)
    /usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0 (from libegl-mesa0/now 20.3.5-1 amd64)

The string is compiled inte the lib itself, it is not found in the ELF-header.

The easiest way to check if the bug is present is with

    grep -a '\\\$\$\{ORIGIN\}/dri' <lib>

We have tested a binary patch as follows:
cd /usr/lib/x86_64-linux-gnu
cp -p libgbm.so.1.0.0 libgbm.so.1.0.0.ORIG
cat libgbm.so.1.0.0.ORIG | sed -e 's/:\\$${ORIGIN}\/dri:/:\/:${ORIGIN}\/dri:/' > libgbm.so.1.0.0

(and corresponding to the files from the two other packages).
With that patchs we can start the Schrödinger suite without any errors. Other software that we have tried and that use Mesa also work without complaint after we patched.

The occurrence of $$ is found in the newer version 22.2.0-1 as well.


-- System Information:
Debian Release: 11.1
Architecture: amd64 (x86_64)

Kernel: Linux 5.18.0-0.deb11.4-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages libgbm1:amd64 depends on:
ii  libc6               2.31-13+deb11u4
ii  libdrm2             2.4.104-1
ii  libexpat1           2.2.10-2+deb11u4
ii  libwayland-server0  1.18.0-2~exp1.1

libgbm1:amd64 recommends no packages.

libgbm1:amd64 suggests no packages.

-- no debconf information


Reply to: